java对象和json互相转化,jackson
1、引入jackson依赖和lombok
<!--jackson--> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.13.1</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </dependency>
2、编写实体类
package com.fbw.gittest05.jackson; import lombok.Data; /** * @program: git-test05 * @description: 学生 * @author: fubowen * @create: 2022-02-21 11:02 **/ @Data public class Student { private String name; private int age; }
3、jackson测试
package com.fbw.gittest05.jackson; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; /** * @program: git-test05 * @description: jackson测试 * @author: fubowen * @create: 2022-02-21 11:02 **/ public class JacksonTest { public static void main(String[] args) throws JsonProcessingException { //jackson对象映射 ObjectMapper objectMapper = new ObjectMapper(); //对象转json Student student = new Student(); student.setAge(32); student.setName("s1"); String s = objectMapper.writeValueAsString(student); System.out.println(s); //json转对象 /* String content="{"name":"s1","age":32}"; Student student1 = objectMapper.readValue(content, Student.class); System.out.println(student1);*/ //集合转json /*Student student = new Student(); student.setAge(32); student.setName("s1"); Student student2 = new Student(); student2.setName("s2"); student2.setAge(26); List<Student> list=new ArrayList<>(); list.add(student); list.add(student2); String json = objectMapper.writeValueAsString(list); System.out.println(json);*/ //json转集合对象 /*String json1="[{"name":"s1","age":32},{"name":"s2","age":26}]"; CollectionType collectionType = objectMapper.getTypeFactory().constructCollectionType(List.class, Student.class); List<Student> list = objectMapper.readValue(json1, collectionType); System.out.println(list);*/ } }