develog

[spring boot] messages.properties 본문

카테고리 없음

[spring boot] messages.properties

냐옴 2021. 8. 12. 11:57

파일 위치

src/main/resources/messages.properties
src/main/resources/messages_en.properties
src/main/resources/messages_ko.properties

 

MessageSource

  • Spring Boot 에서 자동으로 Bean 등록을 해준다
import org.springframework.context.MessageSource;
import org.springframework.context.annotation.Bean;
import org.springframework.context.support.ResourceBundleMessageSource;

@Bean
public MessageSource messageSource() {
	ResourceBundleMessageSource resourceBundleMessageSource = new ResourceBundleMessageSource();
	resourceBundleMessageSource.setBasenames("messages", "errors");
	resourceBundleMessageSource.setDefaultEncoding("utf-8");
	return resourceBundleMessageSource;
}

application.properties

spring.messages.basename=messages

 

사용

@Autowired
private MessageSource messageSource;

Thymeleaf 에서 message 사용

  • #{...}
<button th:text="#{btn.save}"></button>

// 파리미터 전달
<p th:text="#{hello.name(${item.itemName})}"></p>

Locale 선택 방법

LocaleResolver
- AcceptHeaderLocaleResolver
- SessionLocaleResolver
- CookieLocaleResolver
- FixedLocaleResolver
Comments