Spring의 Message관리 정의
Spring 프로젝트에서 여러 곳에 사용되는 다양한 문구를 한 곳에서 관리할 수 있도록 하는 기능
국가별로 설정할 수도 있어서 국제화 기능을 제공합니다.
초기 설정
Spring에선 ResourceBundleMessageSource
를 Bean으로 등록해주면 됩니다.
Spring Boot에서는 자동으로 등록이 되어 있어서 application.properties
에서 설정해주면 됩니다.
메시지 파일은 src/main/resources/
경로에 넣어주면 됩니다.
Message 파일 생성
messages.properties에 저장하고 싶은 문구들을 코드=문구 형태로 저장합니다.
Spring 소스 내에서 사용
MessageSource 클래스를 사용하면 메시지를 소스로 불러오는 것이 가능합니다.
정리
getMessage에는 일반적으로 총 3개의 인자가 들어옵니다.
첫번째: 코드값 두번째: 인자값 세번째: 지역
인자값으로는 한개의 인자만 있다 하더라도 Object 타입의 배열로 전달해야합니다.
ThymeLeaf에 적용
ThymeLeaf의 메시지 표현식을 통해 정해놓은 문구를 코드를 입력하여 가져올 수 있음
설명
#{…}으로 메시지의 코드를 입력하여 값을 가져오고 그 안쪽의 뒤에 (…) 부분에 인자값으로 넣을 값을 넣습니다.