下面我将详细讲解Java中如何将JSON转成List结构数据的完整攻略。
环境准备
首先需要引入相关依赖包,可以使用Maven管理依赖,将以下代码添加到项目根目录下的pom.xml
文件中:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.12.1</version>
</dependency>
JSON转换
使用Jackson
库可以方便地将JSON数据转成Java对象,其中ObjectMapper
类是用于转换JSON数据的主要类。具体实现步骤如下:
- 创建
ObjectMapper
对象
ObjectMapper objectMapper = new ObjectMapper();
- 将JSON字符串转换成Java对象
String jsonStr = "[{\"name\": \"小明\", \"age\": 18},{\"name\": \"小红\", \"age\": 20}]";
List<Map<String, Object>> list = objectMapper.readValue(jsonStr, new TypeReference<List<Map<String, Object>>>(){});
上述代码中,将JSON字符串jsonStr
转换成了List<Map<String, Object>>
类型的对象list
。
示例说明
下面通过两个简单的示例说明如何将JSON转成List结构数据。
示例一
假设有一个保存用户信息的JSON数据如下:
[
{
"id": 1,
"name": "张三",
"age": 18,
"sex": "男"
},
{
"id": 2,
"name": "李四",
"age": 20,
"sex": "女"
}
]
我们需要将此JSON数据转换成Java中的List结构数据。代码实现如下:
String jsonStr = "[{\"id\": 1,\"name\": \"张三\",\"age\": 18,\"sex\": \"男\"},{\"id\": 2,\"name\": \"李四\",\"age\": 20,\"sex\": \"女\"}]";
ObjectMapper objectMapper = new ObjectMapper();
List<Map<String, Object>> list = objectMapper.readValue(jsonStr, new TypeReference<List<Map<String, Object>>>(){});
上述代码中,首先创建了一个ObjectMapper
对象,然后利用该对象将jsonStr
字符串转换成了List<Map<String, Object>>
类型的对象list
。
示例二
假设有一个保存学生成绩的JSON数据如下:
[
{
"name": "小明",
"grade": [
{
"name": "math",
"score": 90
},
{
"name": "english",
"score": 80
}
]
},
{
"name": "小李",
"grade": [
{
"name": "math",
"score": 85
},
{
"name": "english",
"score": 90
}
]
}
]
我们需要将此JSON数据转换成Java中的List结构数据。代码实现如下:
String jsonStr = "[{\"name\": \"小明\",\"grade\": [{\"name\": \"math\",\"score\": 90},{\"name\": \"english\",\"score\": 80}]},{\"name\": \"小李\",\"grade\": [{\"name\": \"math\",\"score\": 85},{\"name\": \"english\",\"score\": 90}]}]";
ObjectMapper objectMapper = new ObjectMapper();
List<Map<String, Object>> list = objectMapper.readValue(jsonStr, new TypeReference<List<Map<String, Object>>>(){});
上述代码中,首先创建了一个ObjectMapper
对象,然后利用该对象将jsonStr
字符串转换成了List<Map<String, Object>>
类型的对象list
。
结语
以上就是Java中将JSON转成List结构数据的完整攻略,通过以上操作可以轻松地将JSON数据转换成Java中的List结构数据,并进行后续的处理。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java JSON转成List结构数据 - Python技术站