Java Socket通信编程示例,包括客户端和服务端

原创 心已赠人 2024-11-27 10:45 60阅读 0赞

以下是一个简单的Socket通信的Java示例,分为客户端和服务端。

  1. 客户端(ServerSocketClient.java):
    ```java
    import java.io.;
    import java.net.
    ;

public class ServerSocketClient {
public static void main(String[] args) {
try (Socket socket = new Socket(“localhost”, 1234));
{
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream())));
PrintWriter out = new PrintWriter(socket.getOutputStream(), true));

  1. System.out.println("客户端:读取信息");
  2. String inputLine;
  3. while ((inputLine = in.readLine()) != null) {
  4. System.out.println("客户端:输入:" + inputLine);
  5. }
  6. System.out.println("客户端:写入信息");
  7. out.println("服务端:你好,客户端!");
  8. System.out.println("客户端:关闭连接");
  9. out.close();
  10. in.close();
  11. } catch (IOException e) {
  12. e.printStackTrace();
  13. }
  14. }

}

  1. 2. 服务端(ServerSocket.java):
  2. ```java
  3. import java.io.*;
  4. import java.net.*;
  5. public class ServerSocket {
  6. public static void main(String[] args) {
  7. try (ServerSocket serverSocket = new ServerSocket(1234));
  8. {
  9. Socket socket = serverSocket.accept();
  10. System.out.println("服务端:连接建立,客户端:" + socket.getRemoteSocketAddress()));
  11. BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream())));
  12. PrintWriter out = new PrintWriter(socket.getOutputStream(), true));
  13. System.out.println("服务端:开始接收信息");
  14. String inputLine;
  15. while ((inputLine = in.readLine()) != null) {
  16. System.out.println("服务端:收到客户端信息:" + inputLine);
  17. // 这里可以处理业务逻辑
  18. }
  19. System.out.println("服务端:向客户端发送信息");
  20. out.println("客户端,你好,服务端!");
  21. System.out.println("服务端:关闭连接");
  22. out.close();
  23. in.close();
  24. } catch (IOException e) {
  25. e.printStackTrace();
  26. }
  27. }
  28. }

以上示例中,客户端和服务器端通过Socket通信。客户端可以向服务器发送信息,也可以接收服务器返回的信息。服务端则负责处理接收到的客户端请求,并将响应返回给客户端。

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

发表评论

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

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

相关阅读