使用java的socket技术,实现客户端与服务端的简单通信
时间: 2024-05-16 08:14:06 浏览: 9
客户端与服务端的简单通信可以使用 Socket 技术来实现。下面是一个简单的示例代码,演示了如何使用 Socket 在客户端和服务端之间进行通信。
服务端代码:
```java
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
public static void main(String[] args) throws IOException {
ServerSocket serverSocket = new ServerSocket(8888); // 创建服务端 Socket,并绑定端口号
System.out.println("服务端已启动,等待客户端连接...");
while (true) {
Socket socket = serverSocket.accept(); // 等待客户端连接
System.out.println("客户端已连接,IP 地址为:" + socket.getInetAddress().getHostAddress());
// TODO: 在这里进行数据读取和发送
}
}
}
```
客户端代码:
```java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
public class Client {
public static void main(String[] args) throws IOException {
Socket socket = new Socket("localhost", 8888); // 创建客户端 Socket,并连接到指定的 IP 地址和端口号
System.out.println("已连接到服务器...");
BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream())); // 读取数据
PrintWriter writer = new PrintWriter(socket.getOutputStream(), true); // 发送数据
// TODO: 在这里进行数据读取和发送
}
}
```
在服务端接受到客户端连接之后,可以通过 `Socket` 对象来进行数据的读取和发送。在客户端连接到服务端之后,也可以通过 `Socket` 对象来进行数据的读取和发送。在代码中,我们使用了 `BufferedReader` 和 `PrintWriter` 来进行数据的读取和发送。