2010-11-21 4 views
0

хотел бы получить некоторую обратную связь по использованию файлов конфигурации XML, когда количество наборов параметров внутри может измениться.Файл конфигурации с переменным количеством объектов

В настоящее время я загружаю в параметры программы (спецификации контрактов для торговых программ) с файлом XML с использованием конфигурации Apache Commons, например, в виде 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, я бы предпочел сделать это.

ответ

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 
+0

Хорошо, спасибо – Pete

Смежные вопросы