您的位置:首页 > 编程语言

Socket 简单通信代码

2016-10-11 09:19 239 查看
SocketService.java 服务器
package com.travelsky.quartz.bean;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class SocketService {
private static ServerSocket server;
public static void main(String[] args) {
try {
server=new ServerSocket(4331);
System.out.println("等待客户端呼叫");
Socket sok = server.accept();
DataOutputStream out = new DataOutputStream(sok.getOutputStream());
DataInputStream in = new DataInputStream(sok.getInputStream());
String s = null;
int i = 0;
while(true){
//				s = in.readUTF();
out.writeUTF(++i+"服务器发送的消息");
//				System.out.println("服务器收到:"+s);
Thread.sleep(2000);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}


SocketTest.java 客户端
package com.travelsky.quartz.bean;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;
import java.net.UnknownHostException;

public class SocketTest {
private static Socket socket;
public static void main(String[] arg){
try {
socket = new Socket("172.29.1.178",4331);//本机ip,端口随意,只要是未被占用的
DataInputStream in = new DataInputStream(socket.getInputStream());
DataOutputStream out = new DataOutputStream(socket.getOutputStream());
String s = null;
int i =0;
while(true){
//				out.writeUTF("用户自定义消息");
s = in.readUTF();
System.out.println(++i+"客户端收到:"+s);
Thread.sleep(500);
}
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
} finally{
closeSocket();
}
}
private static void closeSocket(){
if(socket != null){
try {
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}


客户端和服务器可以相互通信
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Socket 套接字 通信