quello che temevo...grazie per la risposta
mi togli una curiosità??
sto lavorando con xpath e ho un dubbio che mi assilla. Prima di venire alle domande posto un pezzo di codice che utilizzo per la parserizzazione e la lettura in xpath
codice:
private Document createXMLDocument(String fileName) throws Exception {
DocumentBuilderFactory domFactory = DocumentBuilderFactory.newInstance();
domFactory.setNamespaceAware(true);
DocumentBuilder builder = domFactory.newDocumentBuilder();
Document doc = builder.parse(fileName);
return doc;
}
private NodeList readXMLNodes(Document doc, String xpathExpression) throws Exception {
XPath xpath = XPathFactory.newInstance().newXPath();
XPathExpression expr = xpath.compile(xpathExpression);
Object result = expr.evaluate(doc, XPathConstants.NODESET);
NodeList nodes = (NodeList) result;
return nodes;
}
esempio lettura
codice:
doc = m.createXMLDocument("src/file.xml");
nodes = m.readXMLNodes(doc, "//Main/Node");
1. In termini prestazionali xpath fa un eccessivo utilizzo del processore? mi spiego meglio...
In parole povere sto sviluppando un applicazione server multithread che, ad ogni connessione da parte di un client, deve leggere un xml di una certa dimensione(casi in cui l'xml contiene pochissimi nodi e altri casi quando può contenere un bel po di nodi anche annidati).
Considerando che eseguiro svariate letture su questo xml con xpath, vorrei capire se in termini di prestazioni si fa un eccessivo utilizzo del processore.