개발이야기/자봐
스프링 Boot - MessageSource 적용
대머리개발자
2021. 8. 28. 00:27
728x90
모든것이 내용이 훌륭했다.
https://blog.hkwon.me/spring-boot-spring-i18n-configuration/
Spring Boot(Spring) i18n 설정 시 주의사항
장장 네시간(?)의 삽질 후에 혹시나 다른 누군가가 비슷한 곤란한 상황에 빠졌을 때 도움이 되길 바라면서 포스트를 써본다. 사내에서 솔루션 관련 내부 프로젝트 구성 중에 간단하게 배포해야
blog.hkwon.me
물론 난 다른 문제로 삽질을 했지만 삽집을 한 원인은 똑같다. 설정한 프로퍼티 파일을 찾지 못하는 것이다.
나의 리소스 이름에는 .(점) 이 없었지만. MessageSource를 주입하는데 empty가 발생했다.
해당 블로그 마지막에 주의사항 한줄이 나의 삽질을 종결 시켜주었다.
빈 파일을 만들어 주는 이유는 모르겠지만 일단 만들고 기동해봤더니 정상적으로 MessageSource Bean이 주입되었다.
## 리소스를 쓰기 위한 Util 하나 만들고.
@Component public class MessageUtils { private static MessageSource messageSource; @Autowired public void setMessageSource(MessageSource messageSource) { this.messageSource = messageSource; } private static Locale getLocale() { .. } public static String getMessage(String code) { try{ return messageSource.getMessage(code, null, getLocale()); }catch (Exception e){ return code + " messageSource can't find"; } } } |
## 실제 사용하는 라인에서 MessageUtils.getMessage( 'all.right') 쓰면. 딱 끝!!!
정리하자면 1.메세지 프로퍼티 만들고, 2. 메세지리소스 주입 받아서 쓰면 된다.!!. 초..간단. 우린 비지니스로직에만 전념하자^^
일반 스프링 버전에서 사용했던 지난날에 추억의 코드 안녕~
728x90