Kako čitati i raščlaniti XML datoteku na Javi?



Ovaj članak o Java XML parseru pomoći će vam da shvatite što je XML parser i kako raščlaniti XML datoteku pomoću dom parser u Javi.

XML, proširivi označni jezik je označni jezik koji definira skup pravila za kodiranje dokumenata u formatu koji je čitljiv. XML raščlanjivanje odnosi se na prolazak kroz XML dokument radi pristupa ili izmjene podataka. An XML parser pruža potrebnu funkcionalnost za pristup ili izmjenu podataka u XML dokumentu. U ovom članku istražimo XML parser detaljno.

primjer pozivanja udaljene metode java

Što je XML Parser?

The XML parser je softverska knjižnica ili paket koji pruža sučelje za klijentske aplikacije za rad s XML dokumentima. Provjerava odgovarajući format XML dokumenta, a također provjerava valjanost XML dokumenata.





Sljedeći dijagram pokazuje kako XML parser komunicira s XML dokumentima:

xml parser - Edureka O validaciji možete razmišljati kao o drugoj fazi nakon raščlanjivanja. Kako se sastavni dijelovi programa identificiraju prilikom raščlanjivanja, validacijski ih raščlanjivač može usporediti s uzorkom utvrđenim DTD-om ili shemom kako bi provjerio jesu li u skladu.



JAVA XML Parser

Temeljna komponenta XML razvoja je XML raščlanjivanje. XML raščlanjivanje za Javu samostalna je XML komponenta koja raščlanjuje XML dokument (a ponekad i samostalni DTD ili XML shemu) kako bi ga korisnički program mogao obraditi. Donja slika prikazuje XML dokument kao ulaz u XML Parser za

  • Šalje se XML dokumentkao ulaz u XML Parser za Javu
  • DOM ili SAX sučelje parsera raščlanjuje XML dokument
  • Analizirani XML zatim se prenosi u aplikaciju za daljnju obradu

XML Parser za Javu može također sadržavati integrirani procesor XSL transformacije (XSLT) za transformiranje XML podataka pomoću XSL tablica stilova. Korištenjem XSLT procesora možete lako transformirati XML dokumente iz XML u XML, XML u HTML ili gotovo u bilo koji drugi tekstualni format.



Java nudi puno mogućnosti za raščlanjivanje XML dokumenata.SMeđu najčešće korištenim Java XML parserima su:

  1. DOM Parser
  2. SAX Raščlanjivač
  3. StAX parser
  4. JAXB

U ovom članku provjerimo kako raščlaniti XML datoteku pomoću DOM Parsera.

Java XML Parser – DOM

OSUDA stoji za Model objekta dokumenta. DOM Parser je najjednostavniji Java XML parser za implementaciju i učenje. Analizira cijeli XML dokument, učitava ga u memoriju i konstruira a predstavljanje dokumenta.Razmotrimo jednostavan primjer za razumijevanje koncepta.

U demo svrhu koristit ćemo datoteku s imenom Zaposlenici.xml . U dosjeu svaki zaposlenik ima jedinstveni ID, ime i prezime, dob i plaću, a zaposlenici su odvojeni osobnim iskaznicama.

java deklarira niz objekata
Dean Winchester 30 2500 Sam Davis 22 1500 Jake Peralta 24 2000 Amy Griffin 25 2250

Također, kako bismo obuhvatili pojam zaposlenika, kreiramo odgovarajuću Java klasu, tzv Zaposlenik.java kao što je prikazano niže:

paket MyPackage javna klasa zaposlenik {private String ID private String Firstname private String Prezime privatno int age privatna dvostruka plaća public Employee (ID niza, Ime niza, Prezime prezimena, int starost, dvostruka plaća) {this.ID = ID this.Firstname = Firstname this.Lastname = Prezime this.age = age this.salary = pay} @Preuzmi javni niz toString () {return ''}}

Analizirajte XML datoteku pomoću DOM Parsera

Objektni model dokumenta (DOM) nudi API-je koji vam omogućuju stvaranje, izmjenu, brisanje i preuređivanje čvorova po potrebi. DOM parser analizira cijeli XML dokument i učitava XML sadržaj u strukturu stabla. Koristiti Čvor i NodeList klase, možemo dohvatiti i izmijeniti sadržaj XML datoteke.

Uzorak koja učitava sadržaj XML datoteke i ispisuje njezin sadržaj prikazano je ispod:

paket MyPackage import java.io.File import java.io.IOException import java.util.ArrayList import java.util.List import javax.xml.parsers.DocumentBuilder import javax.xml.parsers.DocumentBuilderFactory import javax.xarserptionCarf.conf. import org.w3c.dom.Document import org.w3c.dom.Element import org.w3c.dom.Node import org.w3c.dom.NodeList import org.xml.sax.SAXException javna klasa DomParserExample {public static void main (String [] args) baca ParserConfigurationException, SAXException, IOException {// Nabavite Builder dokumenata DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance () DocumentBuilder builder = factory.newDocumentBuilder () // Učitajte ulazni XML dokument i vratite parametar, unesite XML dokument i vratite parametar, unesite XML dokument i vratite parametar, unesite XML dokument i vratite parametar, unesite XML dokument i vratite par, Klasa dokumenata. Dokument dokumenta = builder.parse (nova datoteka ('Zaposlenici.xml')) Popis zaposlenika = novi ArrayList () NodeList nodeList = document.getDocumentElement (). GetChildNodes () za (int i = 0 i

Izvršenje koda događa se na sljedeći način:

  • Prvo, morate uvesti pakete dom parser u aplikaciju
  • Sljedeći je korak stvaranje DocumentBuilder-a objekt
  • Pročitajte XML datoteku u objekt Document.
  • Analizirajte i pohranite XML datoteku u instancu klase Document
  • Kada pronađete čvor tipa Čvor.ELEMENT_NODE , dohvatite sve njegove podatke i spremite ih u primjerak klase Employee
  • Na kraju, ispišite podatke svih pohranjenih zaposlenika

Izlaz

 

Tako možete raščlaniti XML datoteku pomoću DOM Parsera. DOM parser ima svoje prednosti i nedostatke.

Prednost i nedostaci DOM Parsera

Prednosti

  • API je vrlo jednostavan za upotrebu
  • Podržava i operacije čitanja i pisanja
  • Preferira se kada je potreban slučajan pristup široko odvojenim dijelovima dokumenta

Mane

  • To je neučinkovito pamćenje. Kaoveličina datoteke se povećava, performanse joj se pogoršavaju i troši više memorije
  • Usporedno sporiji od ostalih XML parsera dostupnih na Javi

To nas dovodi do kraja ovog članka 'Java XML Parser'.

c ++ fibonacci rekurzivan

Obavezno vježbajte što je više moguće i vratite svoje iskustvo.

Pogledajte Edureka, pouzdane tvrtke za internetsko učenje s mrežom od više od 250 000 zadovoljnih učenika raširenih širom svijeta. Ovdje smo da vam pomognemo u svakom koraku na putovanju, jer osim što postajete pitanja za ovaj intervju za javu, donosimo kurikulum koji je dizajniran za studente i profesionalce koji žele biti programer za Javu.

Imate pitanje za nas? Molimo navedite ga u odjeljku za komentare ovog 'Java XML Parsera' članka i javit ćemo vam se u najkraćem mogućem roku.