- MessageSource는 각 메시지를 국가(언어)에 맞게 제공할 수 있도록 한다.
- Spring Boot 프로젝트는 ResourceBundleMessageSource가 자동으로 빈으로 등록되고 이 빈이 messages 리소스 번들을 메시지 소스로 읽어온다.
message.properties
key = value
// ex
text.user = 사용자
text.admin = 관리자
text.introduce = 저는 {0} 입니다.
java
@Autowired
MessageSource messageSource;
public void run() throws Exception {
MessageSource.getMessage(String code, Object[] args, Locale loc);
messageSource.getMessage("text.admin", null, Locale.getDefault());
MessageSource.getMessage("text.introduce", new String[]{"user1"}, Locale.KOREA);
}
jsp
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<spring:message code="text.user" text="사용자" />