1、服务器端
import java.io.*;
import java.net.*;
public class Server {
public static void main(String[] args) {
// TODO Auto-generated method stub
try{
ServerSocket server=new ServerSocket(9898);
Socket socket=server.accept();
BufferedReader br1=new BufferedReader(new InputStreamReader(socket.getInputStream()));
BufferedReader br2=new BufferedReader(new InputStreamReader(System.in));
PrintWriter write=new PrintWriter(socket.getOutputStream());
System.out.println("Server has started···");
System.out.println();
System.out.println("有消息(From Client): "+br1.readLine());
System.out.println();
System.out.print("Server:");
String line=br2.readLine();
while(!line.equals("bye")){
write.println(line);
write.flush();
System.out.println();
System.out.println("有消息(From Client): "+br1.readLine());
System.out.println();
System.out.print("Server:");
line=br2.readLine();
}
br1.close();
write.close();
server.close();
socket.close();
}
catch(Exception e){
e.printStackTrace();
}
}
}
2、客户端
import java.io.*;
import java.net.*;
public class Client {
public static void main(String[] args) {
// TODO Auto-generated method stub
try{
Socket socket=new Socket("Lenovo",9898);
BufferedReader br1=new BufferedReader(new InputStreamReader(socket.getInputStream()));
BufferedReader br2=new BufferedReader(new InputStreamReader(System.in));
PrintWriter write=new PrintWriter(socket.getOutputStream());
System.out.println("Client has started···");
System.out.println();
System.out.print("Client:");
String line=br2.readLine();
while(!line.equals("bye")){
write.println(line);
write.flush();
System.out.println();
System.out.println("有消息(From Server): "+br1.readLine());
System.out.println();
System.out.print("Client:");
line=br2.readLine();
}
write.close();
br1.close();
socket.close();
}
catch(Exception e){
e.printStackTrace();
}
}
}
先启动服务器端监听,然后启动客户端连接,客户端先发送消息,服务器后,聊天以"bye"结束。