Nowości w analizie XML Próbuję zrozumieć różne technologie. Jest to mylące ilość różnych technologii dla różnych potrzeb:Jaka jest zaleta korzystania z JAXP zamiast DOM/SAX bezpośrednio w Javie?
- W3C DOM
- XOM
- JDOM
- JAXP
- JAXB
- DOM
- SAX
- StAX
- TrAX
- Woodstox
- dom4j
- Crimson
- VTD-XML
- Xerces-J
- Castor
- XStream
- ...
Wystarczy wymienić tylko kilka.
DOM i SAX wydaje się być sposobem na niskim poziomie w celu analizowania i pracy na XML, więc postanowiłem skupić się na tych, które się wymienionych najbardziej w różnych źródłach i są na niskim poziomie:
DOM, SAX, JAXP.
Przeczytałem ogólnie o parserach na stackoverflow, JAXP-Tutorial from Oracle, XML-Parsing in general i tak dalej.
Próbowałem również kilka tutoriali, takich jak this german one i innych.
Trochę uczepię się teraz DOM i SAX, ale powód, dla którego używam JAXP, wciąż jest poza mną. Wydaje się, że jest to bardziej interfejs do używania DOM, SAX, ... wewnętrznie, ale dlaczego nie używać bezpośrednio DOM lub SAX?
Jaka jest zaleta korzystania z JAXP w warunkach laika?
Kiedy pracuję z (manipulowaniem/tworzeniem) xml, zawsze używam DOM, ale to tylko moja osobista opinia! Myślę, że działa całkiem dobrze i zapewnia wszystkie potrzebne funkcje. – ParkerHalo
To może pomóc https://jaxp.java.net/1.4/JAXP-FAQ.html –
ParkerHalo: DOM wydaje się być bardzo intuicyjnym sposobem pracy z XML. Głównym powodem, dla którego nie należy używać DOM jest często określany jako rozmiar dokumentu, ale ludzie mówią tylko "jeśli dokument jest za duży, używaj SAX zamiast DOM", a nigdy nie definiuj, co oznacza "duże" - wiersze kodu, dokumentu rozmiar w MB, liczba obiektów xml, ... i pod którym to występuje. Czy 20 000 linii jest uważanych za duże lub 1 000 000 itd. – hamena314