/**
* 先运行server类再运行client类
* 然后在client的控制台输入消息,当输入bye时server和client都退出
* @author liuhuiyan
*
*/
public class TalkServer {
public static void main(String[] args) throws Exception{
ServerSocket server = new ServerSocket(9997);
System.out.println("服务端准备完毕,等待客户端连接...");
Socket socket = server.accept();
BufferedReader serverin = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter out = new PrintWriter(socket.getOutputStream());
while(true){
String msg = serverin.readLine();
System.out.println(msg);
out.println("服务端已成功接收到数据: "+msg);
out.flush();
if (msg.equals("bye")) {
break;
}
}
socket.close();
}
}
public class TalkClient {
public static void main(String[] args) throws Exception{
Socket socket = new Socket("localhost", 9997);
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter out =new PrintWriter(socket.getOutputStream());
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
while(true){
String msg =reader.readLine();
out.println(msg);
out.flush();
if (msg.equals("bye")) {
break;
}
System.out.println(in.readLine());
}
socket.close();
}
}