我的团队是Spring Boot的新手,大多数成员以前都在研究J2EE旧版应用程序。我以前有过Spring Boot和微服务的经验。我的问题是关于他们正在使用的模式,这种模式以前从未见过,我想了解为什么这可能是个好主意。
他们一直在创建几个属性文件,并将键值对添加到这些属性文件中,然后使用@Value或ResourceBundle将其插入到对象字段中。
例如,我通常认为像颜色之类的Enum会被添加到属性文件中,与常量相同。
#color.properties
color.r = red
color.b = blue
color.g = green
似乎正在编写许多不必要的代码,例如将所有值注入到一个类中,然后创建一个包含值的数组。我们也正在努力使这项工作奏效。
我认为属性文件的重点是针对外部化配置。当Java为这些事情提供数据类型和结构时,为什么我的团队会这样做?
我想我要这样做的方法是通过创建带有静态常量字段的Enums和实用程序类。
答案 0 :(得分:1)
您说的没错
属性文件的目的是用于外部化配置
仅当您需要允许将此属性配置为每个客户/环境/执行使用不同的值时,才将内容放入属性。即使添加一些很少更改的属性,也会使您的属性过大且繁琐。因此,如果这些常量不希望更改,则绝对是不属于属性。使用Enum或将它们放入Interface或作为static public
成员放入抽象类。称为Constants
或类似的名称
答案 1 :(得分:0)
这不是正确的方法,是的,我们应该对此类常量使用ENUM。
通常,属性文件用于存储项目配置数据或设置
如果您谈论的是Spring的application.properties,那是最糟糕的事情
请通过以下链接充分利用Spring的application.properties
希望这会有所帮助