在Java中设置类属性,Spring配置Vs系统属性文件

top*_*ard 4 java spring properties

我们可以使用Spring配置文件或.properties文件来存储和检索某些属性,例如数据库连接.(db url,db密码等)

我们也可以一起使用Spring配置文件和.properties文件,我们从.property文件引用属性(比如在ant中)

以下场景的优点和缺点是什么:

1 - 仅使用.properties文件.
2 - 仅使用Spring配置文件.
3 - 同时使用两者.

在维护方面,任何方案都会更好吗?

我需要在三者之间做出选择,在我选择任何选项之前,我希望有更好的判断力!

提前致谢!
- 伊瓦尔

Rya*_*art 6

两者一起.使用可从项目中外部化的属性文件来配置Spring.Spring然后配置您的项目.大多数情况下,您不编写代码来读取属性文件.让Spring管理它并使用适当的值注入您的对象.然后,您有适当的依赖注入,并且您构建的工件不是特定于环境的.

缺点:

  1. 您的代码如何知道从哪个文件加载属性?这不属于财产吗?它还通过让代码找到资源而不是被动地接受资源来违反依赖注入.
  2. 配置与您的工件紧密耦合,无法在不重建(BAD)的情况下在环境之间进行更改.
  3. 你似乎想到它的方式,这结合了其他两个的缺点,但如果你按照我描述的方式这样做,它消除了这些缺点,这是一个优点.

  • 这种组合的另一个优点是在Spring配置文件中维护文字值很烦人 - 为此目的,Spring XML太混乱了.具有环境参数值的`.properties`文件更具可读性和可维护性.Spring注入值的另一个小优势是Spring的内置类型转换工具. (2认同)