什么是在Java中查询大型XML文件的最快方法?
DOM - xpath:这需要很长时间。
DOM - xpath:这需要很长时间。
DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance();
docBuilderFactory.setNamespaceAware(true);
DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder();
Document document = docBuilder.parse(new File("test.xml"));
XPath xpath = XPathFactory.newInstance().newXPath();
String xPath = "/*/*[@id='ABCD']/*/*";
XPathExpression expr = xpath.compile(xPath);
//this line takes lot of time
NodeList result = (NodeList)expr.evaluate(document, XPathConstants.NODESET);
在代码的最后一行,程序需要40秒才能完成,而没有这一行只需要1秒钟。
SAX:我不知道它是否可以用于查询,在互联网上我只能找到解析的示例。
有哪些其他选项可以使查询更快?我的XML文件大小约为5MB。谢谢。