Hirdetés
- Az idei év nagy kérdése: bele lehet férni 8 GB VRAM-ba?
- Milyen TV-t vegyek?
- Milyen billentyűzetet vegyek?
- Az elmúlt 30 év legjobb processzorai
- Milyen videókártyát?
- Két 16 GB-os GeForce gyártását szüntette meg az ASUS
- Az év első felében érkeznek az AMD CES-en eltitkolt újdonságai
- A Micron szerint nem dobbantott a végfelhasználói piacról a Crucial eltűnésével
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Milyen széket vegyek?
Új hozzászólás Aktív témák
-
modder
aktív tag
Hali,
http://en.wikipedia.org/wiki/Java_API_for_XML_Processing Ez egy jó összefoglalónak tűnik, hogy melyik API mire való. az XMLEventReader azt hiszem StAX specifikus dolog.
A DOM ugye fogja az egész dokumentumot és beparsolja egy DOM fába.
A SAX az egy push parser: ahogy parsolja a dokumentumokat, új tag-eket, és attribútumokat talál, callback metódusokat hívogat, amiket az alkalmazásod implementál, és el tudod dönteni, hogy mit akarsz csinálni az éppen aktuális információval.
A StAX parser hasonló, csak ott az alkalmazás kívülről irányítja a parsolást: lépteti a parsert előre.Nyilván egy szálban tökre mindegy, hogy push vagy pull, szerintem akkor lehet érdekes ez, amikor van egy parsoló szál és egy feldolgozó szál.
A legegyszerűbb a DOM, mert miután a parser készített belőle egy objektum modellt, a tag-ek objektumok hierarchiájaként fog megjelenni, és szépen a saját metódusain keresztül kereshetsz/iterálhatsz benne, meg is változtathatod. Továbbá, ami nagyon hasznos lehet számodra, hogy XPath lekérdezésekkel le tudod kérni csak azokat a node-okat, amikre szükséged van: http://www.ibm.com/developerworks/library/x-domjava/#3
Az, hogy melyiket válaszd eléggé függ attól, hogy mit akarsz elérni:
Ha nem fontos a sebesség: Ha egy asztali alkalmazást csinálsz, semmit nem fogsz profitálni a StAX parserrel a DOM-hoz képest, nem lesz akkora a különbség. Hatalmas RSS-nél mondjuk (hasraütés) pár száz ms-t veszítesz. (DOM)Ha fontos a sebesség: Egy google readerszerű alkalmazást akarsz, ami éjjel nappal olvassa az RSS-t, és mondjuk párhuzamosan amennyit tud. Akkor nem mindegy, hogy a végső reprezentáció és az eredeti XML között fel akarsz-e építeni és tárolni ideiglenesen a memóriában egy DOM fát.
Esetleg fontos a gyors válasz: te real-time akarod beparszolni az RSS-t, és minél gyorsabban pl. betolni adatbázisba a tartalmát vagy más reprezentációban tárolni. (SAX)Streaming: Ez kapcsolódik az előzőhöz: az RSS-t egyből más reprezentációban akarod elmenteni gyorsan, vagy továbbküldeni a hálózaton. (StAX)
Kell-e minden adat: elképzelhető, hogy nem kell az RSS-ből minden adat, csak a link neve például, akkor a többi adat teljesen fölösleges, fölösleges is tárolni őket, a parsolás folyamán csak azokat az adatokat tárolod le, amik szükségesek. (StAX)
Én azt mondom, amíg nem hatalmas mennyiségű RSS feedről, rettentő reszponzív alkalmazásról, streamingről, vagy nagyon kevés memóriáról van szó, addig használj DOM-ot.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Az idei év nagy kérdése: bele lehet férni 8 GB VRAM-ba?
- Milyen TV-t vegyek?
- Óvodások homokozója
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Milyen billentyűzetet vegyek?
- Az elmúlt 30 év legjobb processzorai
- Milyen videókártyát?
- Két 16 GB-os GeForce gyártását szüntette meg az ASUS
- Anglia - élmények, tapasztalatok
- Az év első felében érkeznek az AMD CES-en eltitkolt újdonságai
- További aktív témák...
- Crucial BX500 500GB 2,5" SSD
- Samsung 960 EVO 250GB M2 NVMe SSD
- Inno3D RTX 3070 ICHILL 8GB / Csavarmatricás! / Beszámítás OK!
- Eladó Konfig Intel Core Ultra 7 265KF 32GB DDR5 2TB SSD RTX5070Ti 16GB O11 EVO Lamborghini!
- Bontatlan Dobozos Új Lenovo Thinkpad T14 G5 Laptop 14" -45% Ultra 7 155U 32/512 FHD+ Magyar!
- Eladó retro HiFi-k és erösítők/hangfalak
- HIBÁTLAN iPhone 15 Pro 128GB Black Titanium -1 ÉV GARANCIA -Kártyafüggetlen
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5060 Ti 16GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone i7 14700KF 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
- BESZÁMÍTÁS! Gigabyte B760M i3 12100F 16GB DDR4 512GB SSD RX 7600 8GB Zalman T4Plus CoolerMaster 650W
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest


