实现Java TCP协议传JSON数据

介绍

作为一名经验丰富的开发者,我将向你展示如何通过Java TCP协议传输JSON数据。这是一个基础且常见的任务,但对于刚入行的小白来说可能有些困惑。本文将通过详细的步骤和示例代码来指导你完成这个任务。

流程步骤

下面是实现Java TCP协议传输JSON数据的流程步骤:

步骤 描述
1 建立服务器端Socket,并监听指定端口
2 等待客户端连接
3 接收客户端发送的JSON数据
4 解析JSON数据
5 建立客户端Socket,并连接到服务器端
6 发送JSON数据到服务器端

代码实现

服务器端代码

// 步骤1:建立服务器端Socket,并监听指定端口
ServerSocket serverSocket = new ServerSocket(8888);

// 步骤2:等待客户端连接
Socket clientSocket = serverSocket.accept();

// 步骤3:接收客户端发送的JSON数据
BufferedReader reader = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
String json = reader.readLine();

// 步骤4:解析JSON数据
JSONObject jsonObject = new JSONObject(json);
String name = jsonObject.getString("name");
int age = jsonObject.getInt("age");

// 处理接收到的JSON数据
System.out.println("Received JSON data - Name: " + name + ", Age: " + age);

客户端代码

// 步骤5:建立客户端Socket,并连接到服务器端
Socket socket = new Socket("localhost", 8888);

// 步骤6:发送JSON数据到服务器端
JSONObject jsonObject = new JSONObject();
jsonObject.put("name", "Alice");
jsonObject.put("age", 25);

PrintWriter writer = new PrintWriter(socket.getOutputStream());
writer.println(jsonObject.toString());
writer.flush();

状态图

stateDiagram
    [*] --> ServerListening
    ServerListening --> ClientConnected : accept()
    ClientConnected --> DataReceived : readLine()
    DataReceived --> DataParsed : JSONObject
    DataParsed --> [*] : Done

通过以上步骤和示例代码,你应该可以成功实现Java TCP协议传输JSON数据了。祝你好运!