Java

Jackson Library

Seung__Yong 2023. 3. 2. 14:25

- build.gradle

implementation 'com.fasterxml.jackson.core:jackson-databind:2.12.3’

- Object to JSON

ObjectMapper objectMapper = new ObjectMapper();
Post post = new Post("제목", "내용");
String jsonData = objectMapper.writeValueAsString(post);  
// {"title":"제목","content":"내용"}

- List to JSON

List<Post> posts = postRepository.findAll();

ObjectMapper objectMapper = new ObjectMapper();

String s = objectMapper.writeValueAsString(posts);

/*
[
	{
    	"title" : "t1",
        "content" : "c1"
        },
    	{
    	"title" : "t2",
        "content" : "c2"
        },

]

*/

 

- JSON to Object

Post post = objectMapper.readValue(jsonData, Post.class);
//{"title":"제목","content":"내용"} ->  Post("제목", "내용")

- JSON to Array

ObjectMapper objectMapper = new ObjectMapper();
Post[] postArr = objectMapper.readValue(jsonStr, Post[].class);

- JSON to List

ObjectMapper objectMapper = new ObjectMapper();
List<Post> postList = objectMapper.readValue(jsonStr, new TypeReference<List<Post>>(){});