Ako čítať a analyzovať XML súbor v Jave?



Tento článok o syntaktickom analyzátore XML v jazyku Java vám pomôže pochopiť, čo je analyzátor XML a ako analyzovať súbor XML pomocou syntaktického analyzátora dom v Jave.

XML, rozšíriteľný značkovací jazyk je značkovací jazyk, ktorý definuje sadu pravidiel pre kódovanie dokumentov vo formáte, ktorý je čitateľný. Analýza XML označuje prechádzanie dokumentu XML za účelom prístupu alebo úpravy údajov. An Analyzátor XML poskytuje požadovanú funkčnosť na prístup alebo úpravu údajov v dokumente XML. V tomto článku poďme preskúmať Analyzátor XML podrobne.

Čo je to XML Parser?

The Parser XML je softvérová knižnica alebo balík, ktorý poskytuje rozhranie pre klientske aplikácie na prácu s dokumentmi XML. Kontroluje správny formát dokumentu XML a tiež overuje dokumenty XML.





Nasledujúci diagram ukazuje, ako analyzátor XML interaguje s dokumentmi XML:

parser XML - Edureka Validáciu si môžete predstaviť ako ďalšiu fázu nad rámec analýzy. Pretože sú komponenty komponentu programu identifikované pri syntaktickej analýze, môže ich validačný parser porovnávať so vzorom stanoveným DTD alebo schémou, aby skontroloval, či sú v zhode.



Analyzátor JAVA XML

Základnou súčasťou vývoja XML je analýza XML. Analýza XML pre Javu je samostatná súčasť XML, ktorá analyzuje dokument XML (a niekedy aj samostatnú DTD alebo XML schému), aby ho mohol používateľský program spracovať. Obrázok nižšie zobrazuje dokument XML ako vstup do analyzátora XML pre

  • Odošle sa dokument XMLako vstup do analyzátora XML pre Javu
  • Rozhranie analyzátora DOM alebo SAX analyzuje dokument XML
  • Analyzovaný XML sa potom prenesie do aplikácie na ďalšie spracovanie

Analyzátor XML pre Javu môže obsahovať aj integrovaný procesor XSL Transformation (XSLT) na transformáciu údajov XML pomocou šablón štýlov XSL. Pomocou procesora XSLT môžete ľahko transformovať dokumenty XML z XML do XML, XML do HTML alebo prakticky do iného textového formátu.



Java poskytuje veľa možností na analýzu dokumentov XML.SOme bežne používaných analyzátorov jazyka Java XML sú:

  1. Analyzátor DOM
  2. Analyzátor SAX
  3. Analyzátor StAX
  4. JAXB

V tomto článku sa pozrime, ako analyzovať súbor XML pomocou analyzátora DOM.

Analyzátor Java XML - DOM

ROZSUDOK znamenať Objektový model dokumentu. DOM Parser je najjednoduchší java XML parser, ktorý je možné implementovať a naučiť sa. Analyzuje celý dokument XML, načíta ho do pamäte a zostrojí a zastúpenie dokumentu.Uvažujme o jednoduchom príklade na pochopenie tohto konceptu.

Na demonštračné účely budeme používať súbor s názvom Zamestnanci.xml . V súbore má každý zamestnanec jedinečné identifikačné meno, meno a priezvisko, vek a plat a zamestnanci sú oddelení podľa svojich identifikačných údajov.

ako používať tablo verejné
Dean Winchester 30 2500 Sam Davis 22 1500 Jake Peralta 24 2000 Amy Griffin 25 2250

Tiež, aby sme zachytili predstavu zamestnanca, vytvoríme jeho príslušnú triedu Java s názvom Zamestnanec.java ako je ukázané nižšie:

balík MyPackage verejná trieda Zamestnanec {súkromné ​​String ID súkromné ​​String Meno súkromné ​​String Priezvisko Priezvisko int int súkromné ​​dvojitý plat verejný zamestnanec (String ID, String Meno, String Priezvisko, int vek, dvojitý plat) {this.ID = ID toto. Prvé meno = Meno this.Lastname = Priezvisko this.age = vek this.salary = plat} @Override public String toString () {return ''}}

Analyzujte súbor XML pomocou analyzátora DOM

Model Object Object (DOM) poskytuje rozhrania API, ktoré vám umožňujú vytvárať, upravovať, mazať a meniť usporiadanie uzlov podľa potreby. Analyzátor DOM analyzuje celý dokument XML a načíta obsah XML do stromovej štruktúry. Pomocou Uzol a NodeList triedy, môžeme načítať a upravovať obsah súboru XML.

Vzorka ktorý načíta obsah súboru XML a vytlačí jeho obsah, je uvedený nižšie:

balík 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.xml.parsers.ParserConfigurationException 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 verejná trieda DomParserExample {public static void main (String [] args) hodí ParserConfigurationException, SAXException, IOException {// Get Document Builder DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance () DocumentBuilder builder = factory.newDocumentBuilder () // Načíta vstupný dokument XML, analyzuje ho a vráti inštanciu // Trieda dokumentu. Dokument document = builder.parse (nový súbor ('Zamestnanci.xml')) Zoznam zamestnancov = nový ArrayList () NodeList nodeList = document.getDocumentElement (). GetChildNodes () pre (int i = 0 i

Spustenie kódu sa deje nasledovne:

  • Najskôr je potrebné do aplikácie importovať balíky analyzátora dom
  • Ďalším krokom je vytvorenie DocumentBuilder objekt
  • Načítajte súbor XML do objektu Document.
  • Analyzujte a uložte súbor XML v inštancii triedy Document
  • Keď nájdete uzol typu Uzol.ELEMENT_NODE , načítať všetky jeho informácie a uložiť ich v inštancii triedy Employee
  • Nakoniec vytlačte informácie o všetkých uložených zamestnancoch

Výkon

 

Takto môžete analyzovať súbor XML pomocou analyzátora DOM. Analyzátor DOM má svoje výhody a nevýhody.

Výhody a nevýhody analyzátora DOM

Výhody

  • Používanie API je veľmi jednoduché
  • Podporuje operácie čítania aj zápisu
  • Uprednostňuje sa, keď sa vyžaduje náhodný prístup k veľmi oddeleným častiam dokumentu

Nevýhody

  • Je to pamäťovo neefektívne. Akoveľkosť súboru sa zvyšuje, jeho výkon sa zhoršuje a zaberá viac pamäte
  • Pomerne pomalšie ako iné analyzátory XML dostupné v prostredí Java

Týmto sa dostávame na koniec tohto článku „Java XML Parser“.

Určite cvičte čo najviac a obráťte sa na svoje skúsenosti.

Pozrite sa na autor: Edureka, dôveryhodná online vzdelávacia spoločnosť so sieťou viac ako 250 000 spokojných študentov rozmiestnených po celom svete. Sme tu, aby sme vám pomohli na každom kroku na vašej ceste. Okrem otázok týkajúcich sa tohto rozhovoru pre jazyk java vymyslíme učebný plán určený pre študentov a profesionálov, ktorí chcú byť vývojármi v prostredí Java.

Máte na nás otázku? Uveďte to v sekcii komentárov tohto „Java XML Parser“. článok a my sa vám ozveme čo najskôr.