상세 컨텐츠

본문 제목

[Java] Jackson 라이브러리를 이용하여 Object를 JSON으로 변환하기

카테고리 없음

by esoesmio 2023. 11. 9. 13:41

본문

 

  1. Java Object -> JSON 문자열
  2. Java Object -> JSON 파일
  3. Map -> JSON 문자열
  4. List -> JSON 문자열
  5. 배열 -> JSON 문자열

 

Java Object를 JSON 문자열로 변환하기 위해서

Jackson ObjectMapper 의 다음 메소드를 사용할 수 있습니다.

  • writeValue()
  • writeValueAsString()
  • writeValueAsBytes()

 

 

1. Java Object -> JSON 문자열

 

 

 

 

 

 

 

 

 
import com.fasterxml.jackson.core.JsonProcessingException;
 
import com.fasterxml.jackson.databind.ObjectMapper;
 
 
 
public class ObjectToJson {
 
public static void main(String[] args) throws JsonProcessingException {
 
 
 
// Student 객체 생성
 
Student student = new Student(1, "Anna");
 
 
 
// jackson objectmapper 객체 생성
 
ObjectMapper objectMapper = new ObjectMapper();
 
 
 
// Student 객체 -> Json 문자열
 
String studentJson = objectMapper.writeValueAsString(student);
 
 
 
// Json 문자열 출력
 
System.out.println(studentJson); // {"id":1,"name":"Anna"}
 
}
 
}

 

 

2. Java Object -> JSON 파일

 
import java.io.File;
 
import java.io.IOException;
 
 
 
import com.fasterxml.jackson.core.JsonGenerationException;
 
import com.fasterxml.jackson.databind.JsonMappingException;
 
import com.fasterxml.jackson.databind.ObjectMapper;
 
 
 
public class ObjectToFile {
 
public static void main(String[] args) throws JsonGenerationException, JsonMappingException, IOException {
 
// Student 객체 생성
 
Student student = new Student(1, "Anna");
 
 
 
// jackson objectmapper 객체 생성
 
ObjectMapper objectMapper = new ObjectMapper();
 
 
 
// Student 객체 -> Json 파일
 
objectMapper.writeValue(new File("C:\\json\\student.json"), student);
 
 
 
}
 
}

 

 

3. Map -> JSON 문자열

 
import java.util.HashMap;
 
import java.util.Map;
 
 
 
import com.fasterxml.jackson.core.JsonProcessingException;
 
import com.fasterxml.jackson.databind.ObjectMapper;
 
 
 
public class MapToJson {
 
public static void main(String[] args) throws JsonProcessingException {
 
 
 
// Map 생성
 
Map<String, Object> map = new HashMap<>();
 
map.put("id", 1);
 
map.put("name", "Anna");
 
 
 
// jackson objectmapper 객체 생성
 
ObjectMapper objectMapper = new ObjectMapper();
 
 
 
// Map -> Json 문자열
 
String studentJson = objectMapper.writeValueAsString(map);
 
 
 
// Json 문자열 출력
 
System.out.println(studentJson); // {"name":"Anna","id":1}
 
}
 
}

 

 

4. List -> JSON 문자열

 
import java.util.ArrayList;
 
import java.util.List;
 
 
 
import com.fasterxml.jackson.core.JsonProcessingException;
 
import com.fasterxml.jackson.databind.ObjectMapper;
 
 
 
public class ListToJson {
 
public static void main(String[] args) throws JsonProcessingException {
 
 
 
// List 생성
 
List<Student> list = new ArrayList<>();
 
list.add(new Student(1, "Anna"));
 
list.add(new Student(2, "Brian"));
 
 
 
// jackson objectmapper 객체 생성
 
ObjectMapper objectMapper = new ObjectMapper();
 
 
 
// List -> Json 문자열
 
String studentJson = objectMapper.writeValueAsString(list);
 
 
 
// Json 문자열 출력
 
System.out.println(studentJson); // [{"id":1,"name":"Anna"},{"id":2,"name":"Brian"}]
 
}
 
}

 

 

5. 배열 -> JSON 문자열

 
import com.fasterxml.jackson.core.JsonProcessingException;
 
import com.fasterxml.jackson.databind.ObjectMapper;
 
 
 
public class ArrayToJson {
 
public static void main(String[] args) throws JsonProcessingException {
 
 
 
// 배열 생성
 
Student[] arr = new Student[2];
 
arr[0] = new Student(1, "Anna");
 
arr[1] = new Student(2, "Brian");
 
 
 
// jackson objectmapper 객체 생성
 
ObjectMapper objectMapper = new ObjectMapper();
 
 
 
// 배열 -> Json 문자열
 
String studentJson = objectMapper.writeValueAsString(arr);
 
 
 
// Json 문자열 출력
 
System.out.println(studentJson); // [{"id":1,"name":"Anna"},{"id":2,"name":"Brian"}]
 
}
 
}

 


 

Jackson 라이브러리를 이용하여

Java 객체를 Json으로 변환하는 방법을 알아보았습니다.

 

 

 

댓글 영역