XMLConfiguration两次写入属性

时间:2013-03-13 09:42:29

标签: java xml configuration

我遇到过这个问题:当我调用org.apache.commons.configuration.XMLConfiguration.save(String fileName)时,它会写入未更改两次的属性。 例如。我从这个foo.xml加载所有属性:

<config>
    <foo>value</foo>
    <bar>value2</bar>
</config>

全部正确加载。然后我通过调用XMLConfiguration.setProperty(“foo”,“new_value”)来改变foo值,然后立即调用XMLConfiguration.save(fileName)并得到以下内容:

<config>
<foo>new_value</foo>
<bar>value2</bar>
<bar>value2</bar>
</config>

如果关闭应用程序,重新启动它并重复这些操作,条形码的数量再次翻倍,但如果改变一个运行所有参数,则所有参数都是正确的。

我尝试过像这样的写作,但没有结果:

config.setProperty("bar", config.getString("bar"));

请帮助......我怀疑,这很神奇......

UPD:问题解决了。配方很简单:不要调用XMLConfiguration.load(),因为它已在XMLConfiguration构造函数中调用。

0 个答案:

没有答案