스프링 MVC 2 - 웹 애플리케이션에 메시지 적용하기
반응형
웹 애플리케이션에 메시지 적용하기
실제 웹 애플리케이션에 메시지를 적용해보자.
먼저 메시지를 추가 등록하자.
messages.properties
타임리프 메시지 적용
타임리프 메시지 표현식 #{...}을 사용하면 스프링의 메시지를 편리하게 조회할 수 있다.
예를 들어서 방금 등록한 상품이라는 이름을 조회하려면 #{label.item}이라고 하면 된다.
랜더링 전
<div th:text="#{label.item}"></h2>
랜더링 후
<div>상품</h2>
타임리프 템플릿 파일에 메시지를 적용해보자.
적용 대상
addForm.html
editForm.html
item.html
items.html
addForm.html
페이지에 이름 적용
- <h2>상품 등록 폼</h2>
- <h2 th:text="#{page.addItem}">상품 등록</h2>
레이블에 적용
- <label for="itemName">상품명</label>
- <label for="itemName" th:text="#{label.item.itemName}">상품명</label>
- <label for="price" th:text="#{label.item.price}">가격</label>
- <label for="quantity" th:text="#{label.item.quantity}">수량</label>
버튼에 적용
- <button type="submit">상품 등록<button>
- <button type="submit" th:text="#{button.save}">저장</button>
- <button type="button" th:text="#{button.cancel}">취소</button>
editForm.html
item.html
items.html
다음 부분을 잘 확인해서 메시지를 사용하도록 적용하자.
<th>ID</th>
<th>상품명</th>
<th>가격</th>
<th>수량</th>
<th th:text="#{label.item.id}">ID</th>
<th th:text="#{label.item.itemName}">상품명</th>
<th th:text="#{label.item.price}">가격</th>
<th th:text="#{label.item.quantity}">수량</th>
실행
잘 동작하는지 확인하기 위해 messages.properties 파일의 내용을 가격 → 금액과 같이 변경해서 확인해보자. 정상 동작하면 다시 돌려두자.
참고로 파라미터는 다음과 같이 사용할 수 있다.
hello.name=안녕 {0}
<p th:text="#{hello.name(${item.itemName})}"></p>
정리
지금까지 메시지를 효율적으로 관리하는 방법을 알아보았다. 이제 여기에 더해서 국제화를 웹 애플리케이션에 어떻게 적용하는지 알아보자.
반응형
'Spring' 카테고리의 다른 글
스프링 MVC 2 - 정리(메시지, 국제화) (0) | 2022.08.22 |
---|---|
스프링 MVC 2 - 웹 애플리케이션에 국제화 적용하기 (0) | 2022.08.22 |
스프링 MVC 2 - 스프링 메시지 소스 사용 (0) | 2022.08.19 |
스프링 MVC 2 - 스프링 메시지 소스 설정 (0) | 2022.08.18 |
스프링 MVC 2 - 메시지, 국제화 소개 (0) | 2022.08.18 |
댓글
이 글 공유하기
다른 글
-
스프링 MVC 2 - 정리(메시지, 국제화)
스프링 MVC 2 - 정리(메시지, 국제화)
2022.08.22 -
스프링 MVC 2 - 웹 애플리케이션에 국제화 적용하기
스프링 MVC 2 - 웹 애플리케이션에 국제화 적용하기
2022.08.22 -
스프링 MVC 2 - 스프링 메시지 소스 사용
스프링 MVC 2 - 스프링 메시지 소스 사용
2022.08.19 -
스프링 MVC 2 - 스프링 메시지 소스 설정
스프링 MVC 2 - 스프링 메시지 소스 설정
2022.08.18