如何在java中读取Xml?

时间:2011-12-13 06:23:27

标签: java xml

  

可能重复:
  how to read a xml file using java?

我希望它们之间的<connection><host><username>.....</connection>之间的所有值。我正在使用saxbuilder,但不知道热得到价值。

<config>
    <global>
        <install>
           /install>
        <crypt>
          </crypt>
        <disable_local_modules>false</disable_local_modules>
        <resources>
            <db>
            </db>
            <default_setup>
                **<connection>**
                    <host><![CDATA[localhost]]></host>
                    <username><![CDATA[root]]></username>
                    <password><![CDATA[root]]></password>
                    <dbname><![CDATA[magento]]></dbname>
                    <initStatements><![CDATA[SET NAMES utf8]]></initStatements>
                    <model><![CDATA[mysql4]]></model>
                    <type><![CDATA[pdo_mysql]]></type>
                    <pdoType><![CDATA[]]></pdoType>
                    <active>1</active>
                **</connection>**
            </default_setup>
        </resources>
        <session_save><![CDATA[db]]></session_save>
    </global>
</config>

2 个答案:

答案 0 :(得分:2)

有许多方法可以读取XML:内置的DOM和SAX解析器,jdom甚至是JAXB(将XML映射到对象)。

但在您的情况下,最好的选择是使用commons-configuration。阅读user guide - 这很简单。

答案 1 :(得分:1)

使用SAXBuilder读取XML后,您将拥有org.jdom.Document对象。您可以使用此对象导航到所需的XML元素。

Element root = document.getRootElement();
Element globalElement = root.getChild("global") 

依旧......

您也可以使用XSLT,但如果您想使用XML,最好的解决方案是JAXB。