var jsonStr = "[{\"strJzbh\":\"JZX1\",\"data\":{\"样品描述\":\"无缺棱掉角\",\"工程部位\":\"测试部位\"}}]"怎么用class接受这段JSON
时间: 2024-08-16 12:08:35 浏览: 43
你可以创建一个对应的Java类来映射这个JSON字符串。首先,分析一下JSON结构,它包含了两个键:"strJzbh" 和 "data"。"data"嵌套了一个包含"样品描述"和"工程部位"字段的对象。我们可以定义一个名为`SampleInfo`的类来表示数据部分,然后在另一个类中作为属性来存储。
```java
public class SampleData {
private String 样品描述;
private String 工程部位;
// 构造函数、getter和setter省略
public SampleData(String 样品描述, String 工程部位) {
this.样品描述 = 样品描述;
this.工程部位 = 工程部位;
}
// getters and setters
}
public class SampleInfoWrapper {
private String strJzbh;
private SampleData data;
public SampleInfoWrapper(String strJzbh, SampleData data) {
this.strJzbh = strJzbh;
this.data = data;
}
// getters and setters for strJzbh and data
}
```
然后你可以通过如下的方式将JSON字符串转换为`SampleInfoWrapper`对象:
```java
import com.fasterxml.jackson.databind.ObjectMapper; // 如果使用Jackson库
String jsonStr = "{\"strJzbh\":\"JZX1\",\"data\":{\"样品描述\":\"无缺棱掉角\",\"工程部位\":\"测试部位\"}}";
ObjectMapper mapper = new ObjectMapper();
SampleInfoWrapper sampleInfo = mapper.readValue(jsonStr, SampleInfoWrapper.class);
```
在这个例子中,假设你已经添加了Jackson库来处理JSON解析。如果你没有使用Jackson,也可以使用`org.json.JSONObject`或类似的库来完成转换。
阅读全文