【问题标题】:Setting class properties in Java, Spring config Vs System Properties file在 Java 中设置类属性,Spring config Vs System Properties 文件
【发布时间】:2011-12-10 09:11:05
【问题描述】:

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

我们还可以同时使用 Spring 配置文件和 .properties 文件,我们从 .property 文件中引用属性(就像在 ant 中一样)

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

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

在维护方面是否有更好的方案?

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

提前致谢!
- 伊瓦尔

【问题讨论】:

    标签: java spring properties


    【解决方案1】:

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

    缺点:

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

    【讨论】:

    • 这种组合的另一个优点是在 Spring 配置文件中维护文字值很烦人 - Spring XML 太混乱了,无法达到这个目的。带有环境参数值的.properties 文件更具可读性和可维护性。让 Spring 注入值的另一个小优势是 Spring 的内置类型转换工具。
    猜你喜欢
    • 2011-10-12
    • 2015-01-03
    • 1970-01-01
    • 2011-04-05
    • 2010-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多