Hoe XML-bestand in Java te lezen en te ontleden?



Dit artikel over java XML-parser helpt u te begrijpen wat een XML-parser is en hoe u een XML-bestand kunt ontleden met dom-parser in Java.

XML, eXtensible Markup Language is een opmaaktaal die een set regels definieert voor het coderen van documenten in een leesbare indeling. XML-parsering verwijst naar het doorlopen van een XML-document om toegang te krijgen tot gegevens of deze te wijzigen. Een XML-parser biedt de vereiste functionaliteit voor toegang tot of wijziging van gegevens in een XML-document. Laten we in dit artikel eens gaan kijken XML-parser in detail.

Wat is XML-parser?

De XML-parser is een softwarebibliotheek of een pakket dat een interface biedt voor clienttoepassingen om met XML-documenten te werken. Het controleert het juiste formaat van het XML-document en valideert ook de XML-documenten.





java system.exit (0)

Het volgende diagram laat zien hoe XML-parser samenwerkt met XML-documenten:

xml-parser - Edureka U kunt validatie beschouwen als een andere fase dan het parseren. Omdat de componenten van het programma tijdens het ontleden worden geïdentificeerd, kan een validerende parser ze vergelijken met het patroon dat is vastgelegd door de DTD of het schema om te controleren of ze voldoen.



JAVA XML-parser

De fundamentele component van XML-ontwikkeling is XML-parsing. XML-parsing voor Java is een stand-alone XML-component die een XML-document (en soms ook een stand-alone DTD of XML-schema) ontleedt, zodat het gebruikersprogramma het kan verwerken. De onderstaande afbeelding toont een XML-document als invoer voor de XML Parser voor

  • Er wordt een XML-document verzondenals invoer voor de XML Parser voor Java
  • De DOM- of SAX-parser-interface parseert het XML-document
  • De ontlede XML wordt vervolgens overgebracht naar de applicatie voor verdere verwerking

De XML-parser voor Java kan ook een geïntegreerde XSL-transformatieprocessor (XSLT) bevatten voor het transformeren van XML-gegevens met behulp van XSL-stylesheets. Met de XSLT-processor kunt u XML-documenten eenvoudig omzetten van XML naar XML, XML naar HTML of virtueel naar elk ander op tekst gebaseerd formaat.



Java biedt veel opties om XML-documenten te ontleden.SEnkele van de meest gebruikte java XML-parsers zijn:

  1. DOM-parser
  2. SAX-parser
  3. StAX Parser
  4. JAXB

Laten we in dit artikel eens kijken hoe u een XML-bestand kunt parseren met de DOM-parser.

Java XML-parser - DOM

ARREST betekent Document Object Model. DOM Parser is de gemakkelijkste Java XML-parser om te implementeren en te leren. Het parseert een volledig XML-document, laadt het in het geheugen en construeert een weergave van het document.Laten we een eenvoudig voorbeeld bekijken om het concept te begrijpen.

Voor demonstratiedoeleinden gebruiken we een bestand met de naam Medewerkers.xml . In het bestand heeft elke werknemer een unieke ID, voor- en achternaam, leeftijd en salaris en de werknemers zijn gescheiden door hun ID's.

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

Om het idee van een werknemer vast te leggen, maken we ook de respectieve Java-klasse, genaamd Employee.java zoals hieronder weergegeven:

pakket MyPackage openbare klasse Werknemer {privé String-ID privé String Voornaam privé String Achternaam privé int leeftijd privé dubbel salaris openbaar Werknemer (String ID, String Firstname, String Achternaam, int leeftijd, dubbel salaris) {this.ID = ID this.Firstname = Firstname this.Lastname = Achternaam this.age = leeftijd this.salary = salaris} @Override public String toString () {return ''}}

Parseer een XML-bestand met behulp van de DOM-parser

Het Document Object Model (DOM) biedt API's waarmee u naar behoefte knooppunten kunt maken, wijzigen, verwijderen en herschikken. De DOM-parser parseert het volledige XML-document en laadt de XML-inhoud in een boomstructuur. De ... gebruiken Knooppunt en NodeList klassen, kunnen we de inhoud van een XML-bestand ophalen en wijzigen.

Een voorbeeld die de inhoud van een XML-bestand laadt en de inhoud afdrukt, wordt hieronder weergegeven:

pakket 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 public class DomParserExample {public static void main (String [] args) gooit ParserConfigurationException, SAXException, IOException {// Get Document Builder DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance () DocumentBuilder builder = factory.newDocumentBuilder () // Laad het XML-invoerdocument, ontleed het en retourneer een instantie van de // Document klasse. Document document = builder.parse (nieuw bestand ('Employees.xml')) Lijst werknemers = nieuwe ArrayList () NodeList nodeList = document.getDocumentElement (). GetChildNodes () voor (int i = 0 i

De uitvoering van code gebeurt als volgt:

  • Eerst moet u dom-parser-pakketten in de toepassing importeren
  • De volgende stap is het maken van de DocumentBuilder voorwerp
  • Lees het XML-bestand naar het Document-object.
  • Parseer het XML-bestand en sla het op in een instantie van de klasse Document
  • Wanneer u een knooppunt van het type vindt Node.ELEMENT_NODE , haal al zijn informatie op en sla ze op in een instantie van de klasse Werknemer
  • Print ten slotte de informatie van alle opgeslagen medewerkers

Uitvoer

 

Dat is hoe u een XML-bestand kunt ontleden met behulp van de DOM Parser. DOM-parser heeft zijn voor- en nadelen.

Voor- en nadelen van DOM Parser

Voordelen

  • API is heel eenvoudig te gebruiken
  • Het ondersteunt zowel lees- als schrijfbewerkingen
  • De voorkeur als willekeurige toegang tot ver uit elkaar liggende delen van een document vereist is

Nadelen

  • Het is inefficiënt geheugen. Zoals dede bestandsgrootte neemt toe, de prestaties verslechteren en verbruikt meer geheugen
  • Relatief langzamer dan andere XML-parsers die beschikbaar zijn in Java

Dit brengt ons bij het einde van dit ‘Java XML Parser’ -artikel.

Zorg ervoor dat je zoveel mogelijk oefent en terugkeert naar je ervaring.

Bekijk de door Edureka, een vertrouwd online leerbedrijf met een netwerk van meer dan 250.000 tevreden leerlingen verspreid over de hele wereld. We zijn hier om je te helpen bij elke stap op je reis, om naast deze Java-interviewvragen ook een curriculum te bedenken dat is ontworpen voor studenten en professionals die een Java-ontwikkelaar willen worden.

wat is een tostring-methode in java

Heeft u een vraag voor ons? Vermeld het in het commentaargedeelte van deze ‘Java XML Parser’ artikel en we nemen zo snel mogelijk contact met u op.