728x90
반응형
스프링 메시지 태그에서 인자를 처리하는 방법에 대해 알아보겠습니다.
<spring:message> 태그의 메시지 인자 처리
properties 파일
register.done=<string>{0}님</strong>, 회원 가입을 완료했습니다.
{0} : 프로퍼티 값 부분
- 인덱스 기반 변수 중 0번 인덱스(첫 번째 인덱스)의 값으로 대치되는 부분 표시
MessageSource의 getMessage()는 인덱스 기반 변수를 Object 배열 타입의 파라미터를 사용
String getMessage(String code, Object[] args,
String defaultMessage, Locale loacle);
String getMessage(String code, Object[] args, Locale locale);
getMessage()를 사용해서 MessageSource 빈을 실행한다면 Object 배열을 생성해서 인덱스 기반 변수 값을 전달할 수 있다.
Object[] args = new Object[1];
args[0] = "자바";
messageSource.getMessage("rregister.done", args, Local.KOREA);
<spring:message> 태그를 사용할 때, arguments 속성을 사용해서 인덱스 기반 변수값을 전달
arguments 속성을 사용한 JSP 예시
<spring:message code="reigster.done" arguments="${registerRequest.name}"/>
properties 파일에 register.done 프로퍼티에 {1}추가
register.done=<string>{0}님 ({1})</strong>, 회원 가입을 완료했습니다.
위 메시지를 사용하기 위해 두 개의 인자를 전달해야하는데 두 개 이상의 값을 전달해야 할 경우 아래와 같은 방법 중 하나를 사용
- 콤마를 구분한 문자열
- 객체 배열
- <spring:argument> 태그 사용
콤마로 구분한 예시
<spring:message code="register.done" arguments="${registerRequest.name}, ${registerReqest.email}"/>
spring:argument 태그 사용 예시
<spring:message code="register.done">
<spring:argument value="${registerRequest.name}"/>
<spring:argument value="${registerRequest.email}"/>
</spring:message>
728x90
반응형
'Spring' 카테고리의 다른 글
[Spring] Errors 와 ValidationUtils 클래스의 주요 메서드 (0) | 2024.05.13 |
---|---|
[Spring] 커맨드 객체의 값 검증과 에러 메시지 처리 1 (0) | 2024.05.11 |
[Spring] 메시지 처리 : MessageSource, <spring:message> (0) | 2024.05.11 |
[Spring] Spring Message 기능 사용해보기 (0) | 2024.05.07 |
[Spring] GET , POST 방식에 동일 이름 커맨드 객체 사용하기 (0) | 2024.04.29 |