Jackson 라이브러리 / ObjectMapper

StrayCat·2026년 2월 10일

Java 객체 <-> JSON 변환 라이브러리

// Java 객체
User user = new User(1L, "홍길동");

// Jackson이 자동으로 JSON 변환
// {"id":1, "name":"홍길동"}
  • Java의 Object 타입을 JSON 타입의 String으로 변환
  • SpringBoot에서는 기본 내장 (별도 설치 불필요)
  • @RestController 사용시 자동 동작
  • return (Java객체) -> JSON 자동변환

주요 역할

  1. 직렬화 : Java 객체 -> JSON (response)
  2. 역직렬화 : JSON -> Java객체 (request)
@PostMapping("/users")
public User create(@RequestBody User user) {  // JSON → User 객체
    return userService.save(user);  // User 객체 → JSON
}

직접 JSON 데이터를 처리해야 할때는 Jackson 라이브러리의 ObjectMapper를 사용할 수 있음

//ObjectMapper 사용 예시

//Object To Json의 경우

@Test
@DisplayName("Object To JSON : get Method 필요")
void test1() throws JsonProcessingException {

	Star star = new Star("홍길동", 95);
	ObjectMapper objectMapper = new ObjectMapper();

	String json = objectMapper.writeValueAsString(star);
	System.out.println("json = " + json);
}


//JSON To Object의 경우

@Test
@DisplayName("JSON To Object : 기본 생성자 & (get OR set) Method 필요")
void test2() throws JsonProcessingException {

	String json = "{\"name\":\"홍길동\",\"age\":95}"; // JSON 타입의 String
    
	ObjectMapper objectMapper = new ObjectMapper();
	Star star = objectMapper.readValue(json, Star.class);
}
profile
알면 좋은 것보단 잊어버리기 싫은 것들을 기록합니다.

0개의 댓글