Java的国际化:使用每包一个资源包访问,或者一个整个项目?
-
20-09-2019 - |
题
我不知道什么国际
我有几个包的项目。我使用Eclipse的内置的“外部化字符串”向导来提取我的班字符串常量的属性文件,并通过调用静态存取替换这些字符串。因此,而不是
System.out.println("Hello, world!");
我最终
System.out.println(Messages.getString("MyKey"));
,并在每包一个Messages
工具类(它提供一个静态getString
方法用于获得所希望的字符串从ResourceBundle [在这种情况下.properties
文件])。它是最好有一个Messages
类在每一个包,或有一个Messages
类为整个项目?
解决方案
我赞成一个全球定位文件。你将不得不重复键(“OK”,“取消”),这将需要重复或嵌套,如果资源整合与外部本地化人接口更容易。
其他提示
我会保持一个每包。这样的维护/重构/单元测试要容易得多。
此外,还有在单一文件中没有全局相关性。
不隶属于 StackOverflow