반응형

스프링이 제공하는 기본 포맷터


스프링은 자바에서 기본으로 제공하는 타입들에 대해 수 많은 포맷터를 기본으로 제공한다.
IDE에서 Formatter 인터페이스의 구현 클래스를 찾아보면 수 많은 날짜나 시간 관련 포맷터가 제공되는 것을 확인할 수 있다.
그런데 포맷터는 기본 형식이 지정되어 있기 때문에, 객체의 각 필드마다 다른 형식으로 포맷을 지정하기는 어렵다.

스프링은 이런 문제를 해결하기 위해
애노테이션 기반으로 원하는 형식을 지정해서 사용할 수 있는 매우 유용한 포맷터 두가지를 기본으로 제공한다.

  • @NumberFormat : 숫자 관련 형식 지정 포맷터 사용, NumberFormatAnnotationFormatterFactory
  • @DateTimeFormat : 날짜 관련 형식 지정 포맷터 사용, Jsr310DateTimeFormatAnnotationFormatterFactory

예제를 통해서 알아보자.


FormatterController




templates/formatter-form.html

 


templates/formatter-view.html

 

실행
http://localhost:8080/formatter/edit

실행해보면 지정한 포맷으로 출력된 것을 확인할 수 있다.

결과


참고
@NumberFormat, @DateTimeFormat의 자세한 사용법이 궁굼한 분들은 다음 링크를 참고하거나 관련 애노테이션을 검색해보자.
https://docs.spring.io/spring-framework/docs/current/reference/html/core.html#format-CustomFormatAnnotations

 

반응형