@Valid는 default message를 어떻게 한글로 출력해줄까?

CodeKong의 기술 블로그·2023년 12월 20일
1

SPRING BOOT

목록 보기
20/24

💡 토이프로젝트를 진행하면 @Valid 기능을 항상 이용하는 중 한글로 response를 보내주는 데 어떻게 한글로 자동으로 보내주는지 궁금했다.

먼저 @NotBlank부터 타고 들어갔다.

모두 default로 설정 되어있었고 jakarta.validation.constraints.NotBlank.message에서 default 메세지를 가져오는 듯했다.

따라서 라이브러리를 살펴보았다

나라 별로 많은 default message를 지원하고 있었고 간단하게 ko랑 ja만 살펴보기로 했다!(영어는 많이 보니까..)

ko

ja

둘다 유니코드 형식으로 지원하고 있었고 null 메세지에 대해서 번역해보았다!


ko

ja


각각 잘 번역해 주었다!

근데 언어는 어떻게 감지해서 반환해주는 지 궁금했다.

구글에서 여러 포스트를 검색한 결과 LocaleResolver에서 국제화를 진행해준다고 한다!

LocaleResolver

docs에 따르면 HTTP 헤더에서 제공하는 요청의 로케일을 사용한다고 한다!

크롬 개발자 툴에서 확인한 결과

accept-language 헤더에 있는 정보로 구분하는 것 같았다
근데 ko도 있고 us있는데..

알고보니 순서에 따라 중요도가 나누어진다고 한다!

0개의 댓글