메시지

어떤 프로젝트의 웹 환경의 개발 및 유지보수 단계 등에서 표현되는 문구를 변경해야 하는 상황이 생길 수 있다.

만약 해당 파트가 한두 번만 사용된다면 큰 문제를 야기하지 않겠지만, 카테고리명과 같은 잦은 빈도의 문구의 경우 수정 시마다 굉장히 많은 비용을 소모한다.

그렇기에 자주 사용되는 문구나 단어들을 한 곳에 모아서 관리하도록 하는 기능을 '메시지 기능'이라고 한다.

이러한 메시지 기능 사용의 Thymeleaf 상 예시는 다음과 같다.

 

messages.properties (메시지 설정)

item=상품
item.id=상품 ID
item.itemName=상품명
item.price=가격
item.quantity=수량

.HTML (메시지 호출/사용)

<label for="itemName" th:text="#{item.itemName}"></label>

 

 

국제화

웹에 접근하는 사용자의 사용 언어에 맞게 별도 설정된 메시지 파일(messages.properties)을 관리할 수 있다.

이를 통해 '국제화'를 진행할 수 있다.

예) 한국어 : messages_ko.properties, 영어 : messages_en.properties

 

messages_ko.properties

item=상품
item.id=상품 ID
item.itemName=상품명

messages_en.properties

item=Item
item.id=Item ID
item.itemName=Item Name

 

※ 추가 사항
-  서버에 접근한 클라이언트의 위치를 알기 위해서는 HTTP accept-language 헤더값을 사용하거나, 사용자에게 적용 언어 선택 항목을 추가하는 등의 방법을 취하면 된다.
- 스프링은 기본적인 메시지 및 국제화 기능을 간편하게 제공하므로 직접 이러한 기능을 구현하는 것을 대신할 수 있다.

 

+ Recent posts