java.util.Properties 是不是支持嵌套属性?
Posted
技术标签:
【中文标题】java.util.Properties 是不是支持嵌套属性?【英文标题】:Does java.util.Properties support nested properties?java.util.Properties 是否支持嵌套属性? 【发布时间】:2015-03-26 17:54:15 【问题描述】:我正在尝试在一个文件中设置特定于环境的属性,为每个运行代码的设备定制。我希望能够将一些属性嵌套在其他属性中,例如:
browser=chrome
baseUrl=$server/app/login.do
server=http://localhost
当我获得baseUrl
属性时,我希望能够获得http://localhost/app/login.do
。
java.util.Properties
是否支持这种行为?如果没有,是否还有另一个核心类可以做到?
【问题讨论】:
您可以使用 Apache Configuration 来执行此操作,但不能在内置类中执行此操作,除非您自己编写。 没有。很容易测试,而且可能比在这里询问更快,当然也更可靠。 @EJP 测试Properties
的默认 行为很容易,但可能有一些选项可以稍微改变行为,因此需要询问。我还问是否有另一个核心类确实提供了这种行为。
【参考方案1】:
答案是否定的。java.util.Properties 只对字符串进行操作。
属性列表中的每个键及其对应的值都是一个字符串。 (来自 Javadoc)
编辑: 没有核心 Java 类会这样做,因为没有核心 Java 框架/类被设计来做这样的事情。 我喜欢Typesafe's Config library。
【讨论】:
这回答了我问题的第一部分,但没有考虑其他可以满足需求的核心类。以上是关于java.util.Properties 是不是支持嵌套属性?的主要内容,如果未能解决你的问题,请参考以下文章