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);*/
    }
}
经验分享 程序员 微信小程序 职场和发展