BACKEND

[JAVA] toJson vs toPrettyJson

handcraft 2025. 8. 19. 16:06
String json = "{\"name\":\"Park\",\"age\":30,\"extra\":\"value\"}";

ObjectMapper mapper = new ObjectMapper();
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);

User user = mapper.readValue(json, User.class);
System.out.println(user.name); // Park

1. toJson vs toPrettyJson

  • toJson
    • 일반 JSON 출력
    • 한 줄로 출력, 들여쓰기 없음
    • 내부적으로 GeneratorSettings.prettyPrinter = null
  • toPrettyJson
    • 보기 좋은(JSON Pretty Print) 출력
    • 줄바꿈과 들여쓰기 적용
    • 내부적으로 GeneratorSettings.prettyPrinter에 PrettyPrinter 객체가 할당됨

핵심: PrettyPrinter 사용 여부가 두 메서드의 차이.

 

구분  특징  내부 동작
toJson 일반 JSON 출력, 한 줄로 표시 GeneratorSettings.prettyPrinter = null
toPrettyJson 보기 좋은 JSON 출력 (Pretty Print), 줄바꿈 + 들여쓰기 적용 GeneratorSettings.prettyPrinter에 PrettyPrinter 객체 사용

 

class User {
    public String name = "Park";
    public int age = 30;
}

// 일반 JSON
String json1 = JsonUtil.toJson(new User());
System.out.println(json1);
// 출력: {"name":"Park","age":30}

// Pretty JSON
String json2 = JsonUtil.toPrettyJson(new User());
System.out.println(json2);
// 출력:
// {
//   "name" : "Park",
//   "age" : 30
// }

 

요약

  • toJson → 빠른 한 줄 JSON
  • toPrettyJson → 사람이 읽기 좋은 JSON