有没有最好的方法来解析xml文件并将其存储在bean中,同时针对xsd进行验证?
我有这样的场景。
我必须解析xml文件并将数据存储在java / spring(可选)bean中,我想在junit类中使用它。
我想做的是我想限制用户编写特定格式的xml。所以我想根据xsd验证xml文件。
是否有最好的API这个?
xml文件是一个带嵌套标签的简单文件,不会太大。
答案 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());
}