希望得到一些关于使用XML配置文件的反馈。
目前,我使用Apache Commons配置在XML文件中加载程序参数(交易程序的合约规范),例如,在对象构造函数的try
块中:
XMLConfiguration config = new XMLConfiguration("TraderParms.xml");
m_myContract.m_symbol=config.getString("contract.symbol");
m_myContract.m_expiry=config.getString("contract.expiry");
这适用于具有固定数量的合同(参数集),但对于某些应用程序,我想加载任意数量的合同。实际上我们谈论的不到十个。
这似乎需要一些方法来迭代一组事物并在XML文件中指定该设置。
或者,此时,我应该使用数据库吗?
我觉得直接编辑XML文件要方便一些,所以如果用XML格式的代码稍微不那么优雅,我宁愿这样做。
答案 0 :(得分:2)
从this howto guide看来,您可以在XML中找到一个字符串列表:
<buttons>
<name>OK,Cancel,Help</name>
</buttons>
使用getList()
方法检索它:
List buttons = config.getList("buttons.name");
same page还显示了如何处理一组参数:
<database>
<tables>
<table tableType="system">
<name>users</name>
</table>
<table tableType="application">
<name>documents</name>
</table>
</tables>
</database>
可以通过这种方式访问:
List prop = (List)config.getProperty("tables.table.name"); // get list of strings
config.getProperty("tables.table(0).name") // access first table name