java实现 TCP 服务端
时间: 2023-09-03 18:12:18 浏览: 46
以下是一个简单的 Java TCP 服务端的示例代码:
```java
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class TCPServer {
public static void main(String[] args) {
try {
// 创建 ServerSocket 对象,监听指定端口
ServerSocket serverSocket = new ServerSocket(8888);
System.out.println("服务器已启动,等待客户端连接...");
// 等待客户端连接
Socket socket = serverSocket.accept();
System.out.println("客户端已连接,IP 地址为:" + socket.getInetAddress().getHostAddress());
// 获取客户端输入流和输出流
InputStream inputStream = socket.getInputStream();
OutputStream outputStream = socket.getOutputStream();
// 读取客户端发送的数据
byte[] buffer = new byte[1024];
int len = inputStream.read(buffer);
String message = new String(buffer, 0, len);
System.out.println("客户端发送的消息为:" + message);
// 向客户端发送数据
String response = "欢迎您,客户端!";
outputStream.write(response.getBytes());
// 关闭连接
inputStream.close();
outputStream.close();
socket.close();
serverSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
在上面的代码中,我们首先创建了一个 ServerSocket 对象来监听指定的端口,然后使用 accept() 方法等待客户端的连接。一旦客户端连接成功,我们便可以通过 getInputStream() 方法获取客户端的输入流,通过 getOutputStream() 方法获取客户端的输出流。然后我们可以通过输入流读取客户端发送的数据,通过输出流向客户端发送数据。最后,我们需要关闭连接和相关资源。