java 多层json解析
时间: 2024-12-20 11:12:53 浏览: 4
在Java中,处理多层JSON解析通常涉及到使用像Jackson、Gson或org.json这样的库。这些库提供强大的功能,可以将JSON字符串转换成Java对象树,反之亦然。
当你遇到嵌套的JSON结构,比如:
```json
{
"users": [
{
"id": 1,
"name": "John",
"address": {
"street": "123 Main St",
"city": "New York"
}
},
{
"id": 2,
"name": "Jane",
"address": {
"street": "456 Elm St",
"city": "San Francisco"
}
}
]
}
```
你可以通过递归或迭代的方式来解析它。例如,如果你使用Jackson库,可以创建对应的User和Address类:
```java
public class Address {
String street;
String city;
}
public class User {
int id;
String name;
Address address;
}
```
然后,你可以使用`ObjectMapper`来解析JSON:
```java
String json = ...; // JSON字符串
ObjectMapper mapper = new ObjectMapper();
List<User> users = mapper.readValue(json, new TypeReference<List<User>>() {});
for (User user : users) {
System.out.println(user.getName());
System.out.println(user.getAddress().getStreet());
}
```
在这个例子中,`readValue`方法会自动处理嵌套的对象,将JSON映射到Java对象层次结构上。
阅读全文