기획자가 화면에 표시되는 문구가 맘에 들지 않아 상품명 -> 상품이름 변경 요청을 한다면?
여러 화면에 보이는 상품명,가격,수량 등 lable
에 있는 단어를 변경하려면 다음 화면들을 다 찾아가면서 모두 변경 해야 한다.
화면 수가 적으면 문제가 되지 않지만 화면이 수십개 이상이라면 수십개의 파일을 고쳐야 한다.
addForm.html
, editForm.html
,item.html
,items.html
그 이유는 해당 HTML 파일에 message 가 하드코딩 되어 있기 때문이다.
이런 다양한 메세지를 한 곳에서 관리하도록 하는 기능을 메세지 기능 이라 한다.
예를 들어 message.properties
라는 메세지 관리용 파일을 만들고
item=상품
item.id=상품 id
item.itemName=상품명
item.price=가격
item.quantity=수량
각 HTML들은 다음과 같이 해당 데이터를 key 값으로 불러서 사용하는 것이다.
<label for="itemName" th:text="#{item.itemName}"></label>
<label for="itemName" th:text="#{item.itemName}"></label>