0

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

dbpassword=password
database=localhost
dbuser=mkyong

我想向 dbpassword 添加超过 1 个密码。我可以做吗?

4

4 回答 4

3

通常,您会使用某种手动“嵌套”来执行此操作:

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

bar.dbpassword=...
...

但老实说,当您有了层次结构时,您至少应该考虑使用更自然的层次结构文件格式 - XML 浮现在脑海中。

于 2012-09-14T11:20:41.853 回答
1

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

  • 多个键(例如pwd1,pwd2等或mybd1.pwd,mybd2.pwd等)
  • 带有分隔符和多个密码的值(例如"mypass1 anotherpass"

假设您使用第二种方案,您可能会对通过字符串拆分来提取不同的密码感兴趣。

于 2012-09-14T11:20:05.050 回答
0

在属性文件中,

dbpassword=password1,password2

在java文件中,

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

您应该在 java.util.Properties 中的多个值中引用

于 2012-09-14T11:22:54.487 回答
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>
于 2012-09-14T11:23:02.007 回答