MessageSourceService
다국어 메시지를 조회하는 서비스. MessageKey 기반으로 로케일에 맞는 메시지를 반환한다.
의존성
| 서비스 | 용도 |
|---|---|
| MessageSource | 메시지 조회 |
| titleSource | 타이틀 조회 |
메서드
getTitle
fun getTitle(messageKey: MessageKey, args: Array<*>? = null): String?타이틀 메시지를 조회한다. 없으면 null 반환.
| Caller | Callee |
|---|---|
| RestExceptionHandler | titleSource.getMessage |
getMessage
fun getMessage(messageKey: MessageKey, args: Array<*>? = null): String메시지를 조회한다. 없으면 기본 메시지 반환.
| Caller | Callee |
|---|---|
| RestExceptionHandler | messageSource.getMessage |
폴백 처리: 메시지가 없으면 EXCEPTION_NO_MESSAGE 키의 메시지 반환.
MessageKey
| 예시 | 설명 |
|---|---|
SEARCH_FAILED | 검색 실패 |
CHANGED_PRICE | 가격 변동 |
INVALID_PARAMETER | 잘못된 파라미터 |
SOLD_OUT | 매진 |
특징
- 로케일 지원:
LocaleContextHolder로 현재 로케일 자동 감지 - 폴백 메시지: 메시지 없을 때 기본 메시지 제공
- 타이틀/메시지 분리: 제목과 상세 메시지 별도 관리