比较基础的一个服务端客户端互相通信的程序
/**
* @author john socket 的服务器端,接收到数据后打印到控制台
的数据
*
*/
public class ServiceSocket_1 {
public static void main(String[] args) throws Exception {
ServerSocket ss = new ServerSocket(4001);
Socket s = ss.accept();
BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));
PrintStream ps = new PrintStream(s.getOutputStream());
String temp = br.readLine();
while (true) {
System.out.println("客户端:" + temp);
ps.println(temp);//获取temp中的字符流并发送给客户端
if (temp.equals("stop")) {
break;
}
temp = br.readLine();
}
br.close();
ps.close();
ss.close();
}
}
/**
* @author john socket 客户端和服务器端通讯,客户端发送数据后接收从服务端发来的数据
*
*/
public class ClientSocket {
public static void main(String[] args) throws Exception {
Socket s = new Socket("localhost", 4001);
PrintStream ps = new PrintStream(s.getOutputStream());
//br获取的是控制台输入的字符流
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//br_service获取的是socket中从服务端发送过来的字符流
BufferedReader br_server = new BufferedReader(new InputStreamReader(s.getInputStream()));
String temp = br.readLine();
while (true) {
ps.println(temp);//获取temp中的字符流并发送到服务端
temp = br_server.readLine();
System.out.println("服务器的信息:" + temp);
if (temp.equals("stop")) {
break;
}
temp = br.readLine();
}
s.close();
br.close();
br_server.close();
}
}