java 把map不想特殊字符被转义、并转成json字符串
时间: 2024-02-01 07:04:55 浏览: 187
可以使用Jackson库将Map转换为JSON字符串,并且不进行特殊字符的转义。具体实现可以参考以下代码:
```java
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.util.HashMap;
import java.util.Map;
public class MapToJson {
public static void main(String[] args) throws JsonProcessingException {
Map<String, Object> map = new HashMap<>();
map.put("name", "张三");
map.put("age", 20);
map.put("address", "北京市");
ObjectMapper objectMapper = new ObjectMapper();
String jsonStr = objectMapper.writer().writeValueAsString(map);
System.out.println(jsonStr);
}
}
```
运行结果如下:
```json
{"name":"张三","age":20,"address":"北京市"}
```
其中,ObjectMapper是Jackson库中用于序列化和反序列化JSON的核心类。在上面的代码中,我们创建了一个ObjectMapper对象,并使用其writer()方法获取一个ObjectWriter对象,然后使用writeValueAsString()方法将Map对象序列化成JSON字符串。默认情况下,Jackson库会自动进行特殊字符的转义,但是我们可以通过设置一些配置项来关闭这个功能。
阅读全文