list 获取json数据转为 list
时间: 2023-08-07 13:34:29 浏览: 52
将JSON数据转换为List对象可以使用Jackson库,可以按照以下步骤实现:
1. 引入Jackson库依赖:
```xml
<!-- Spring Boot 2.x 版本 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<!-- Spring Boot 1.x 版本 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.9</version>
</dependency>
```
2. 定义List对象类型:
假设要将以下JSON数据转换为List对象:
```json
[
{"id": 1, "name": "张三"},
{"id": 2, "name": "李四"},
{"id": 3, "name": "王五"}
]
```
则需要定义一个对应的JavaBean类:
```java
public class User {
private int id;
private String name;
// getters and setters...
}
```
3. 将JSON数据转换为List对象:
可以使用`ObjectMapper`类将JSON数据转换为List对象:
```java
String json = "[{\"id\": 1, \"name\": \"张三\"}, {\"id\": 2, \"name\": \"李四\"}, {\"id\": 3, \"name\": \"王五\"}]";
ObjectMapper objectMapper = new ObjectMapper();
List<User> userList = objectMapper.readValue(json, new TypeReference<List<User>>(){});
```
使用`readValue`方法可以将JSON字符串转换为List对象,其中第二个参数`TypeReference`用于指定转换的目标类型。
最终,将JSON数据转换为List对象的代码如下所示:
```java
String json = "[{\"id\": 1, \"name\": \"张三\"}, {\"id\": 2, \"name\": \"李四\"}, {\"id\": 3, \"name\": \"王五\"}]";
ObjectMapper objectMapper = new ObjectMapper();
List<User> userList = objectMapper.readValue(json, new TypeReference<List<User>>(){});
```