XML解析并将其存储在bean中,同时验证有效错误的xsd

时间:2014-09-10 11:07:20

标签: java xml parsing xsd

有没有最好的方法来解析xml文件并将其存储在bean中,同时针对xsd进行验证?
我有这样的场景。

  

我必须解析xml文件并将数据存储在java / spring(可选)bean中,我想在junit类中使用它。


我想做的是我想限制用户编写特定格式的xml。所以我想根据xsd验证xml文件。
是否有最好的API这个?

  

xml文件是一个带嵌套标签的简单文件,不会太大。

1 个答案:

答案 0 :(得分:0)

使用JAXB解析非常好,我认为它真的很容易。 你可以这样做::

DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
        DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
        InputSource is = new InputSource(new StringReader(xml));
        Document doc = dBuilder.parse(is);
        doc.getDocumentElement().normalize();

        NodeList nList = doc.getElementsByTagName("XML_Parent_Element");

        for (int temp = 0; temp < nList.getLength(); temp++) {

            Node nNode = nList.item(temp);

            if (nNode.getNodeType() == Node.ELEMENT_NODE) {

                Element eElement = (Element) nNode;
                bean.setAttribute(eElement.getElementsByTagName("attribute_name_string")
                        .item(temp).getAttribute());
}