java实现基于TCP的C/S通信
时间: 2023-11-14 19:05:45 浏览: 104
1. 服务端代码:
```
import java.net.*;
import java.io.*;
public class Server {
public static void main(String args[]) throws Exception {
ServerSocket server = new ServerSocket(8888); // 创建服务端Socket对象,指定端口号
System.out.println("等待客户端连接...");
Socket socket = server.accept(); // 监听客户端请求,返回Socket对象
System.out.println("客户端连接成功!");
// 获取输入输出流
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintStream out = new PrintStream(socket.getOutputStream());
String line = null;
while ((line = in.readLine()) != null) { // 循环读取客户端消息
System.out.println("客户端发送的消息:" + line);
out.println("服务端已接收到消息:" + line); // 发送响应消息
}
in.close();
out.close();
socket.close();
server.close();
}
}
```
2. 客户端代码:
```
import java.net.*;
import java.io.*;
public class Client {
public static void main(String args[]) throws Exception {
Socket socket = new Socket("127.0.0.1", 8888); // 创建客户端Socket对象,指定服务端IP和端口号
// 获取输入输出流
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintStream out = new PrintStream(socket.getOutputStream());
out.println("Hello, Server!"); // 发送消息给服务端
String response = in.readLine(); // 接收服务端响应消息
System.out.println("服务端返回的消息:" + response);
in.close();
out.close();
socket.close();
}
}
```