Java JOSN字符串 转换map
时间: 2023-07-31 14:04:43 浏览: 103
可以使用 `Jackson` 库将一个 JSON 字符串转换成 Map,具体代码如下:
```java
String jsonStr = "{\"key1\":\"value1\",\"key2\":\"value2\",\"key3\":\"value3\"}";
ObjectMapper objectMapper = new ObjectMapper();
TypeReference<HashMap<String, String>> typeRef = new TypeReference<HashMap<String, String>>() {};
HashMap<String, String> map = objectMapper.readValue(jsonStr, typeRef);
```
其中,我们使用 `ObjectMapper` 对象的 `readValue()` 方法将 JSON 字符串转换成 `HashMap` 对象。需要注意的是,我们使用 `TypeReference` 来指定 `map` 的泛型类型,以便 `ObjectMapper` 能够正确地将 JSON 字符串转换成 `HashMap`。
相关问题
字符串转josn java
以下是两种将Java字符串转换为JSON格式的方法:
1. 使用阿里巴巴的fastjson库中的toJSONString()方法,可以将Java对象转换为JSON格式的字符串。例如:
```java
import com.alibaba.fastjson.JSONObject;import java.util.HashMap;
import java.util.Map;
public class JsonTest {
public static void main(String[] args) {
Map<String, Object> bodys = new HashMap<>();
bodys.put("Name", "法外狂徒张三");
bodys.put("NO", null);
bodys.put("TITLE", null);
bodys.put("URGENCY", "普通");
String bodyJsonString = JSONObject.toJSONString(bodys);
System.out.println("body :" + bodyJsonString);
}
}
```
输出结果为:
```
body :{"URGENCY":"普通","Name":"法外狂徒张三"}
```
可以看到,使用toJSONString()方法转换出来的JSON格式字符串不会显示值为空的key和value。
2. 在使用toJSONString()方法时,可以使用fastjson库中的SerializerFeature包中的WriteMapNullValue属性,来显示值为空的key和value。例如:
```java
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.serializer.SerializerFeature;
import java.util.HashMap;
import java.util.Map;
public class JsonTest {
public static void main(String[] args) {
Map<String, Object> bodys = new HashMap<>();
bodys.put("Name", "法外狂徒张三");
bodys.put("NO", null);
bodys.put("TITLE", null);
bodys.put("URGENCY", "普通");
String bodyJsonString = JSONObject.toJSONString(bodys, SerializerFeature.WriteMapNullValue);
System.out.println("body :" + bodyJsonString);
}
}
```
输出结果为:
```
body :{"URGENCY":"普通","NO":null,"TITLE":null,"Name":"法外狂徒张三"}
```
可以看到,使用WriteMapNullValue属性后,转换出来的JSON格式字符串会显示值为空的key和value。
josn格式转换工具
有多种JSON格式转换工具可供选择。其中两个常用的工具是Jackson和HiJson。
Jackson是一个开源免费的JSON转换工具,它是SpringMVC转换的默认选择。使用Jackson进行JSON格式转换,需要导入相应的jar包,并创建核心对象,然后调用相应的方法即可完成转换。
HiJson是另一个免费且功能强大的JSON格式转换工具。它支持的功能包括格式化JSON、XML转JSON、MAP转JSON、格式化XML以及节点查找和文本查找等。HiJson可以使人们轻松地阅读和编写JSON数据。
这两个工具都可以将Java对象或集合转换成JSON格式的字符串,也可以将JSON格式的字符串转换成Java对象。可以根据具体的需求选择适合自己的工具来进行JSON格式的转换。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [JSON转换工具](https://blog.csdn.net/weixin_45477086/article/details/121868659)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* [json格式化单机版工具(实用版本)无需联网](https://download.csdn.net/download/lz278585901/11058127)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文