Java TCP 网络编程案例:客户端-服务器消息交互

本示例演示了使用 Java 进行简单的 TCP 网络编程,实现客户端向服务器发送消息,服务器接收消息并将其转换为大写后返回给客户端。

客户端代码

import java.io.*;
import java.net.*;

public class TCPClient {
    public static void main(String[] args) {
        try {
            // 创建 Socket 对象
            Socket clientSocket = new Socket('localhost', 8888);
            
            // 获取输入流和输出流
            PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);
            BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
            
            // 发送消息
            out.println('hello world');
            
            // 接收并输出返回消息
            String response = in.readLine();
            System.out.println('Server response: ' + response);
            
            // 关闭连接
            in.close();
            out.close();
            clientSocket.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

服务器端代码

import java.io.*;
import java.net.*;

public class TCPServer {
    public static void main(String[] args) {
        try {
            // 创建 ServerSocket 对象
            ServerSocket serverSocket = new ServerSocket(8888);
            
            while (true) {
                // 接收客户端连接
                Socket clientSocket = serverSocket.accept();
                
                // 获取输入流和输出流
                BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
                PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);
                
                // 接收消息并转换为大写后返回
                String request = in.readLine();
                String response = request.toUpperCase();
                out.println(response);
                
                // 关闭连接
                in.close();
                out.close();
                clientSocket.close();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

代码说明

  • 客户端代码使用 Socket 类创建与服务器的连接,并通过输入流和输出流进行消息的发送和接收。
  • 服务器代码使用 ServerSocket 类监听端口,并通过 accept() 方法接收客户端连接。
  • 服务器端接收消息后,将其转换为大写后返回给客户端。

运行步骤

  1. 编译并运行服务器端代码。
  2. 编译并运行客户端代码。
  3. 客户端会向服务器发送消息 'hello world'。
  4. 服务器接收到消息并转换为大写后返回给客户端。
  5. 客户端会打印服务器返回的 'HELLO WORLD' 消息。

总结

本示例简单易懂地演示了 Java TCP 网络编程的基本原理,并通过实际代码展现了客户端和服务器之间的消息交互过程。希望本示例能帮助您更好地理解 TCP 网络编程的概念。

Java TCP 网络编程案例:客户端-服务器消息交互

原文地址: https://www.cveoy.top/t/topic/orYd 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录