【发布时间】:2016-10-07 12:39:47
【问题描述】:
一段时间以来,我一直在从事该项目,其中所有配置都存储在 Config 类的常量中。我觉得这很舒服:要使用任何属性,我只需要写Config.PROPERTY_NAME。快速、简单、易懂。比CONFIG.getString("StringNameWithoutAutocompletion", defaultValue)舒服多了。
但是要添加新的配置常量,有一些麻烦:我需要复制粘贴然后更改Config类中的现有常量(在我的项目中两次),然后尽量不要忘记添加它.properties 文件。另外,如果以后我想更改属性名称,我需要在两个地方都指定它。
那么,有一个问题:是否可以在不每次手动更改Config 类的情况下获得干净的Config.NAME 属性?
我可以想象的一种可能(但对我来说不是很好)的解决方案是使用 .java 文件而不是 .properties,并在程序加载时对其进行编译。
我认为最简单的方法是从属性文件中自动生成Config 类中的常量,因此如果我在.properties 文件中添加MyProperty,它将立即成为MY_PROPERTY 常量。可能有一些类似于Project Lombok 的库吗?
【问题讨论】:
标签: java properties configuration refactoring constants