jackson依赖

<dependency>
  <groupId>com.fasterxml.jackson.core</groupId>
  <artifactId>jackson-databind</artifactId>
  <version>2.10.0</version>
</dependency>

<dependency>
  <groupId>com.fasterxml.jackson.core</groupId>
  <artifactId>jackson-annotations</artifactId>
  <version>2.10.0</version>
</dependency>

<dependency>
  <groupId>com.fasterxml.jackson.core</groupId>
  <artifactId>jackson-core</artifactId>
  <version>2.10.0</version>
</dependency>

实例化ObjectMapper

ObjectMapper mapper=new ObjectMapper();

1,对象转json字符串

User user=new User();
String json=mapper.writeValueAsString(user);

2,Map转json字符串

Map<String,Object> map=new HashMap();
String json=mapper.writeValueAsString(map);

3,数组和list转json字符串

List<User> list=new ArrayList();
String json=mapper.writeValueAsString(list);

4,json字符串转对象

String user="{\"name\":\"smith\"}";
User user=mapper.readValue(user,User.class);

5,json字符串转Map

String json="{\"name\":\"smith\"}";
Map<String,String> map=mapper.readValue(json,Map.class);

6,json字符串转对象数组和List

String json="[{\"name\":\"smith\"},{\"name\":\"james\"}]";
CollectionType listType=mapper.getTypeFactory().constructCollectionType(ArrayList.class,User.class);
List<User> list=mapper.readValue(json,listType);

7,json字符串转Map数组List<Map<String,Object>>

String json="[{\"name\":\"smith\"},{\"name\":\"james\"}]";
CollectionType listType=mapper.getTypeFactory().constructCollectionType(ArrayList.class,Map.class);
List<Map<String,Object>> list=mapper.readValue(json,listType);

 

 posted on 2022-05-19 15:45  会飞的金鱼  阅读(115)  评论(0)    收藏  举报