Java I18N : 패키지 당 하나의 ResourceBundle Accessor 또는 전체 프로젝트에 하나를 사용하십니까?

StackOverflow https://stackoverflow.com/questions/2067336

문제

나는 국제화에 대해 아무것도 모른다.

여러 패키지가있는 프로젝트가 있습니다. Eclipse의 내장 "Exextionalize Strings"마법사를 사용하여 클래스의 문자열 상수를 속성 파일로 추출하고 해당 문자열을 정적 액세서로 교체합니다. 그래서 대신

System.out.println("Hello, world!");

나는 끝납니다

System.out.println(Messages.getString("MyKey"));

그리고 a Messages 모든 패키지의 유틸리티 클래스 (정적을 제공하는 getString ResourceBundle에서 원하는 문자열을 가져 오는 방법 [이 경우 a .properties 파일]). a를 갖는 것이 가장 좋습니다 Messages 모든 패키지의 클래스 또는 싱글이 있습니다 Messages 전체 프로젝트 수업?

도움이 되었습니까?

해결책

글로벌 현지화 파일을 선호합니다. 중복 또는 중첩이 필요한 중복 키 ( "OK", "CANCEL")가 있으며 리소스가 통합되면 외부 현지화와 인터페이스하는 것이 더 쉽습니다.

다른 팁

나는 패키지 1 대를 유지할 것입니다. 이러한 방식으로 유지 보수/리팩토링/단위 테스트가 훨씬 쉽습니다.

또한 단일 파일에는 전역 종속성이 없습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top