spring boot 에서 json 포멧팅을 변경을 하는 방법을 알아보기 위해 작성된 포스팅이다.
글로벌이 아닌 한곳에서만 설정위한 방법이다.
@JsonFormat
을 사용을 하면 전역적으로 사용하는 것이 아니라 지역적으로 사용을 할 수 있다.
속성으로는 pattern, timezone 외 여러가지가 있다.
@JsonFormat
을 설정하는것은 지속적인 방법이 아니다.
글로벌 하게 사용하는 방법 중 하나인 설정파일에서 적용하는 방법이 있다.
이 설정 방법에는 약간의 단점이 있다.
LocalDateTime
,LocalDate
에는 작동이 되지 않는다. 하지만 java.util.Date 와 java.util.Calendar 에는 정상작동이 된다.
위의 두번째 방식을 해소하기위해 우리는 java 설정 파일에서 Bean 주입을 통하여 커스텀을 할 수 있다.
이 방법의 경우 어플리케이션의 기본 포멧을 변경을 하게 도와주면 약간의 번거러움이 있지만 레거시 코드 나 java8에서 모두 적용된다는 점에서
글로벌 설정이 필요할 경우 java 설정 으로 bean 으로 올려서 사용을 하는 것을 지향해야 한다.
테스트 케이스를 작성을 해보아도 정상적으로 동작하는 것을 알 수 있다.
@JsonFormat
어노테이션을 사용