如何创建Java TCP Server端
在网络编程中,TCP(Transmission Control Protocol)是一种面向连接的协议,它提供可靠的、基于字节流的数据传输。在Java中,我们可以通过使用Socket类和ServerSocket类来创建TCP Server端。
实际问题
假设我们需要创建一个简单的TCP Server端,用于接收客户端发送的消息,并将消息返回给客户端。这样的Server端可以用于实现简单的即时通讯应用。
示例代码
下面是一个简单的示例代码,用于创建一个TCP Server端:
import java.io.*;
import java.net.*;
public class TCPServer {
public static void main(String[] args) {
try {
ServerSocket serverSocket = new ServerSocket(9999);
System.out.println("Server started. Waiting for clients...");
while (true) {
Socket clientSocket = serverSocket.accept();
System.out.println("Client connected: " + clientSocket);
BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);
String message = in.readLine();
System.out.println("Received message from client: " + message);
out.println("Message received: " + message);
in.close();
out.close();
clientSocket.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
在这个示例代码中,我们首先创建一个ServerSocket实例,并指定端口号为9999。然后通过while循环不断接受客户端的连接。对于每个连接,我们创建一个新的线程来处理客户端的请求,并将消息返回给客户端。
类图
下面是一个简单的类图,展示了TCPServer类与Socket类之间的关系:
classDiagram
class TCPServer {
+main(String[] args)
}
class Socket {
+getInputStream()
+getOutputStream()
}
饼状图
下面是一个简单的饼状图,展示了TCP Server端接收消息的比例:
pie
title TCP Server Message Distribution
"Received" : 40
"Not Received" : 60
结尾
通过以上示例代码,我们可以创建一个简单的TCP Server端,用于接收客户端的消息。在实际应用中,我们可以根据需求对代码进行扩展和优化,以满足特定的需求。希望这篇文章对你有所帮助!