Java属性文件

时间:2012-09-14 11:18:59

标签: java

我想知道,我可以在属性文件中对属性进行分组吗? 这是我的属性文件的内容:

dbpassword=password
database=localhost
dbuser=mkyong

我想将dbpassword添加到1个以上的密码。我可以这样做吗?

4 个答案:

答案 0 :(得分:3)

通常情况下,您可以使用某种手动“嵌套”来执行此操作:

foo.dbpassword=password
foo.database=localhost
foo.dbuser=mkyong

bar.dbpassword=...
...

但说实话,当你有一个层次结构时,你至少应该考虑使用更自然的分层文件格式 - 想到XML。

答案 1 :(得分:1)

使用简单的属性文件,您必须使用

  • 多个密钥(例如pwd1pwd2等,或mybd1.pwdmybd2.pwd等。)
  • 包含分隔符和多个密码的值(例如"mypass1 anotherpass"

假设您使用第二种方案,String splitting可能会对您提取不同的密码感兴趣。

答案 2 :(得分:0)

在属性文件中,

  

DBPASSWORD =密码1,密码2

在java文件中,

String[] dbpasswords = properties.getProperty("dbpassword").split(",");

您应该在Multiple values in java.util.Properties

中引用

答案 3 :(得分:0)

您可以将属性存储为XML文件。它会像:

<props>
    <database>
        <name>name1</name>
        <dbpass>pass1</dbpass>
        <dbuser>user1</dbuser>
    </database>
    <database>
        <name>name2</name>
        <dbpass>pass2</dbpass>
        <dbuser>user2</dbuser>
    </database>
</props>