将JSON字符串转换为Map/List是Java编程中非常常见的操作,可以使用第三方库如Jackson、Gson和Fastjson等来实现。以下是使用Jackson和Fastjson两种库实现的示例说明:
使用Jackson库实现
- 首先,需要在pom.xml中添加Jackson库的依赖:
xml
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.12.5</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.12.5</version>
</dependency>
- 然后,通过使用ObjectMapper类将JSON字符串转换为Map:
```java
import com.fasterxml.jackson.databind.ObjectMapper;
Map
String json = "{\"key\":\"value\"}";
try {
map = new ObjectMapper().readValue(json, HashMap.class);
} catch (Exception e) {
e.printStackTrace();
}
System.out.println(map); // 输出:{key=value}
```
- 如果要将JSON字符串转换为List,可以先将JSON字符串转换为Java对象,然后再通过Java对象获取List:
```java
import com.fasterxml.jackson.databind.ObjectMapper;
List
使用Fastjson库实现
- 首先,需要在pom.xml中添加Fastjson库的依赖:
xml
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.75</version>
</dependency>
- 然后,通过使用JSONObject类将JSON字符串转换为Map:
```java
import com.alibaba.fastjson.JSONObject;
Map
String json = "{\"key\":\"value\"}";
try {
map = JSONObject.parseObject(json, HashMap.class);
} catch (Exception e) {
e.printStackTrace();
}
System.out.println(map); // 输出:{key=value}
```
- 如果要将JSON字符串转换为List,可以通过使用JSONArray类将JSON字符串转换为Java对象数组,然后再通过Java对象数组获取List:
```java
import com.alibaba.fastjson.JSONArray;
List
以上是使用Jackson和Fastjson两个常见的JSON处理库实现将JSON字符串转换为Map/List的示例。其中,Jackson的使用相对简单,而Fastjson需要更多的手动解析工作。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java中如何将json字符串转换成map/list - Python技术站