我目前正在为使用 ResourceBundle 的应用程序制作资源。问题是,使用当前代码来调度资源,我每次需要时都需要创建资源包的实例,我猜这不是一个好主意,因为我最终会一次又一次地加载资源.
第二种解决方案是将捆绑包分成许多,但我最终会得到捆绑包只有 2-3 个字符串,比如 15 个捆绑包。
我的问题是: 有没有办法简单地将所有资源加载到一个静态类中并从那里访问它们。
我做了一小段代码,似乎对我有用,但我怀疑它的质量。
public class StaticBundle
{
private final static ResourceBundle resBundle =
ResourceBundle.getBundle("com.resources");
public final static String STRING_A = resBundle.getString("KEY_A");
public final static String STRING_B = resBundle.getString("KEY_B");
public final static String STRING_C = resBundle.getString("KEY_C");
}
有了这个,我可以在项目中的任何地方调用StaticBundle.STRING_A
并获取值,但是由于捆绑包是与类本身同时初始化的......程序很可能没有时间从喜好。
有没有好的方法来做到这一点或任何其他可能的解决方案?
谢谢