从去年开始,我们开发了一个应用程序,在其中我们使用静态字符串常量来存储常量。像 public static final String PAYMENT_CHEQUE = "cheque"; 我在哪里需要,即在 jsp 页面以及 Action 类中,我将在查看资源包、属性文件后引用上面的字符串常量,我的问题是
- 与静态字符串常量相比,如果我使用属性文件是否会对性能造成影响?
- 静态字符串常量和属性文件键值对哪个更好?
- 我们在jsp中使用静态字符串常量(用于标签)是个好主意吗?
请建议我
从去年开始,我们开发了一个应用程序,在其中我们使用静态字符串常量来存储常量。像 public static final String PAYMENT_CHEQUE = "cheque"; 我在哪里需要,即在 jsp 页面以及 Action 类中,我将在查看资源包、属性文件后引用上面的字符串常量,我的问题是
请建议我
一般来说,使用硬编码字符串是个坏主意,因为这意味着每次更改都需要一个新的编译-部署周期,而使用属性文件意味着需要重新启动应用程序而无需其他任何东西(尽管有些人会说这本身就是付出高昂的代价)。使用属性文件的另一个优点是能够通过将应用程序切换到另一个文件来切换语言 - 比在代码中拥有多组常量标签更合理。
您可以像现在一样使用最终的静态字符串字段,只在应用程序的初始化阶段给它们一个从属性文件中读取的值,而不是为每个常量返回文件(这将是昂贵的!)。这样您就不必在应用程序范围内进行更改,并且您仍然可以享受我上面提到的优势。
在这种情况下,我更喜欢资源包: