2011-01-10 2 views
2

20 개 이상의 언어로 현지화해야하는 앱을 개발하는 것은 이번이 처음입니다. 문제는 변수가 포함 된 많은 메시지가 있다는 것입니다. 변경된 경우 관리자는 20 개 이상의 등록 정보 파일에서이를 변경해야하기 때문에 하드 코드 할 수 없습니다.메시지 묶음에 변수가 있는지 처리하는 방법 (현지화)

어떻게 처리 할 수 ​​있습니까? 저는 현재 스프링 프레임 워크를 사용하고 있습니다.

+1

여기에 자습서가 있습니다. http://download.oracle.com/javase/tutorial/i18n/format/messageintro.html – McDowell

답변

1

변수를 마커로 바꾸고 그에 따라 바꿀 수있는 다른 종류의 Formatter 인 String.Format 메서드 (http://download.oracle.com/javase/1.5.0/docs/api/java/lang/String.html#format(java.lang.String,%20java.lang.Object ...)를 사용하는 방법이 있습니다.

나는 스프링에 대해 점점 익숙해지고 있지만 더 세련된 솔루션을 제공 할 수 있다고 의심하지만 현재는 런타임에 가변 값으로 자리 표시자를 대체하기 위해 문자열 포맷터를 사용합니다.

1

org.springframework.context.MessageSource을 살펴보십시오. {0}, {1} 구문을 사용하여 변수 대체에 사용할 수있는 Object []을 사용하는 다양한 getMessage() 메소드가 있습니다.

자세한 내용은 스프링 설명서 Section 3.13.1을 참조하십시오.

관련 문제