반응형
타임리프 메시지 국제화
이번에는 국제화를 적용해 보았다.
label.item=Item
label.item.id=Item ID
label.item.itemName=Item Name
label.item.price=price
label.item.quantity=quantity
page.items=Item List
page.item=Item Detail
page.addItem=Item Add
page.updateItem=Item Update
button.save=Save
button.cancel=Cancel
messages_en.properties 폴더에 위와 같이 영어로 된 이름을 설정해 주었다.
<h2 th:text="#{page.addItem}">상품 등록</h2>
그리고 위 코드 처럼 전에 설정한 메시지 표현식을 사용해 자동으로 대체가 된다.
이러면 국제화는 간단하게 끝이다.
웹 브라우저의 언어 설정 값을 변경하면 Accept-Language의 값이 변경된다.
Accept-Language는 클아이언트가 서버에 기대하는 언어 정보를 담아 요청하는 HTTP 요청 헤더이다.
메시지 기능은 Locale 정보를 알아야 언어를 선택할 수 있는데 스프링은 언어 선택 시 기본으로 Accept-Language 헤더의 값을 사용한다.
Locale 선택 방식도 변경할 수 있는데 LocaleResolver 인터페이스의 구현체를 변경해서 쿠키나 세션 기반의 Locale 선택을 할 수 있도록 한다. 이렇게 되면 고객이 직접 Locale를 선택할 수 있다. 관련 예제는 검색하면 많이 나오니 검색해서 적용하면 된다고 한다.
스프링 MVC 2편 - 백엔드 웹 개발 활용 기술을 참고하여 공부하였습니다.
반응형
'Framework & Library > Spring Boot' 카테고리의 다른 글
[Spring Boot] : BindingResult 사용(1) (0) | 2022.02.10 |
---|---|
[Spring Boot] : 타임리프를 통한 검증 코드 추가하기 (0) | 2022.02.10 |
[Spring Boot] : 타임리프 웹 애플리케이션 Message에 적용하기 (0) | 2022.02.09 |
[Spring Boot] : 타임리프 MessageSource 사용하기 (0) | 2022.02.09 |
[Spring Boot] : 타임리프 MessageSource 설정 (0) | 2022.02.09 |
댓글