Jackson
实体类
@Data@NoArgsConstructor@AllArgsConstructorpublic class Address { private String country; private String city;}
@Data@NoArgsConstructor@AllArgsConstructorpublic class User implements Serializable { private String name; private int age; @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private Date data; private Address address;}
Json—— Object
private ObjectMapper objectMapper = new ObjectMapper();private Address address = new Address("china","wuhan");private User user = new User("zhangsan",18,new Date(),address);/** * 单个复杂对象的转换 * @throws JsonProcessingException */@Testvoid objectString() throws JsonProcessingException { String s = objectMapper.writeValueAsString(user); System.out.println(s); User user1 = objectMapper.readValue(s,User.class); System.out.println(user1.getAge()); System.out.println(user1.getAddress().getCity());}
Json—— List
private ObjectMapper objectMapper = new ObjectMapper();private Address address = new Address("china","wuhan");private User user = new User("zhangsan",18,new Date(),address);/** * List--String * @throws JsonProcessingException */@Testvoid objectList() throws JsonProcessingException { List<User> list = new ArrayList<User>(); list.add(user); list.add(user); String jsonString = objectMapper.writeValueAsString(list); System.out.println(jsonString); List<User> list1 = objectMapper.readValue(jsonString,List.class); System.out.println(list1.get(0));}
Json—— Map
private ObjectMapper objectMapper = new ObjectMapper();private Address address = new Address("china","wuhan");private User user = new User("zhangsan",18,new Date(),address);/** * Map--String * @throws JsonProcessingException */@Testvoid objectMap() throws JsonProcessingException { Map<String,User> map = new HashMap<>(); map.put("1",user); map.put("2",user); String jsonString = objectMapper.writeValueAsString(map); System.out.println(jsonString); Map<String,User> map1 = objectMapper.readValue(jsonString,Map.class); System.out.println(map1.get("1"));}