Ich habe eine Weile nach diesem Thema gesucht und auch einige Ergebnisse gefunden, die ich am Ende des Beitrags erwähne. Kann mir jemand helfen, diese drei Fragen für die unten aufgeführten Fälle genau zu beantworten?
Für welche Anwendungsfälle ist die Verwendung von XmlSluper sinnvoller als die Verwendung von XmlParser und umgekehrt (aus Sicht der Benutzerfreundlichkeit von API / Syntax)?
Welches ist speichereffizienter? (sieht aus wie Slurper)
Welches verarbeitet die XML schneller?
Fall a. Wann muss ich fast alle Knoten in der XML lesen?
Fall b. wenn ich nur wenige Knoten lesen muss (wie mit gpath expression)?
Fall c. Wann muss ich die XML aktualisieren / transformieren?
vorausgesetzt, das XML-Dokument ist nicht trivial (mit Tiefenstufe und Größe der XML).
Ressourcen :
http://www.tutkiun.com/2009/10/xmlparser-and-xmlslurper.html heißt es:
Unterschied zwischen XMLParser und XMLSlurper:
Es gibt Ähnlichkeiten zwischen XMLParser und XMLSlurper, wenn sie zum einfachen Lesen verwendet werden. Wenn wir sie jedoch zum erweiterten Lesen verwenden und wenn XML-Dokumente in anderen Formaten verarbeitet werden, gibt es Unterschiede zwischen zwei.
XMLParser speichert Zwischenergebnisse nach dem Parsen von Dokumenten. Andererseits,
XMLSlurper speichert keine internen Ergebnisse nach der Verarbeitung von XML-Dokumenten.
Die tatsächlichen, grundlegenden Unterschiede werden bei der Verarbeitung der analysierten Informationen deutlich. Dies ist bei der Verarbeitung mit direkter Datenmanipulation und -verarbeitung in einem Streaming-Szenario der Fall.
http://groovy.dzone.com/news/john-wilson-groovy-and-xml
Das groovige Dokument ( XmlParser , XmlSlurper ) und die Website des Groovys erklären sie gut ( hier und hier ), machen aber keine gute Arbeit bei der Erklärung der oben genannten Frage.