Java网络编程中服务器端问题示例

原创 ゞ 浴缸里的玫瑰 2024-09-20 14:30 189阅读 0赞

在Java网络编程中,服务器端的问题通常涉及到客户端的连接、数据传输以及错误处理等方面。以下是一个简单的示例:

  1. 创建ServerSocket监听
    ```java
    import java.io.*;
    import java.net.ServerSocket;
    import java.net.Socket;

public class Server {
private static Server server = new Server();

  1. public static void main(String[] args) throws IOException {
  2. int port = 9999; // 服务器端口
  3. System.out.println("Server started on port " + port);
  4. server.acceptAndHandleClient(port);
  5. }
  6. // 主要方法,处理客户端连接
  7. private void acceptAndHandleClient(int port) throws IOException {
  8. ServerSocket ss = new ServerSocket(port); // 创建服务器套接字
  9. Socket clientSocket = ss.accept(); // 等待客户端连接
  10. System.out.println("New connection from " + clientSocket.getRemoteSocketAddress()));
  11. handleClient(clientSocket);
  12. }
  13. // 业务处理方法,根据具体需求编写
  14. private void handleClient(Socket clientSocket) throws IOException {
  15. BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()))); // 创建输入流
  16. String message;
  17. while ((message = in.readLine()) != null)) { // 读取客户端消息
  18. System.out.println("Received message: " + message));
  19. // 在这里处理业务逻辑,可以发送回信等
  20. if (message.equals("Hello Server")) {
  21. sendResponse(clientSocket, "Hello Client"));
  22. }
  23. }
  24. in.close(); // 关闭输入流
  25. }
  26. private void sendResponse(Socket clientSocket, String response) throws IOException {
  27. OutputStream out = clientSocket.getOutputStream();
  28. out.write(response.getBytes()); // 发送响应
  29. out.flush();
  30. }

}
```

这个示例创建了一个简单的服务器,监听9999端口。当有客户端连接时,会发送一个”Hello Server”的消息,并回复同样的消息。

文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 0 条评论,189人围观)

还没有评论,来说两句吧...

相关阅读