读取特定值的xml文件,并使用ant替换属性文件中的值

时间:2014-10-20 08:08:58

标签: java xml ant

假设我有一个像abc.xml这样的xml文件 其中包含

<datasource name="localmysql">
    <inline-jdbc jdbc-driver="com.mysql.jdbc.Driver"
                 jdbc-uri="url"
                 jdbc-username="username" jdbc-password="password"/>
</datasource>
<datasource name="localmysqlolap">
    <inline-jdbc jdbc-driver="com.mysql.jdbc.Driver"
                 jdbc-uri="url1"
                 jdbc-username="username1" jdbc-password="password1"/>
</datasource>
<datasource name="localmysqltenant">
    <inline-jdbc jdbc-driver="com.mysql.jdbc.Driver"
                 jdbc-uri="url2"
                 jdbc-username="username2" jdbc-password="password2"/>
</datasource>

现在我想在节点

中读取jdbc-uri,jdbc-username,jdbc-password 的值

datasource name="localmysql"并更改属性文件的值,该文件还包含jdbc-uri,jdbc-username,jdbc-password作为键。有没有办法使用ant

来做到这一点

1 个答案:

答案 0 :(得分:0)

您可以使用ANT replace task 并替换每个值。在这种情况下,您需要知道旧/新属性值。

我使用了property regex task

中的ant-contrib

请记住,ANT中的属性是不可变的,无法修改/更新