Heim >Java >javaLernprogramm >Wie validiere ich XML-Dateien anhand von XSD-Schemas in Java?

Wie validiere ich XML-Dateien anhand von XSD-Schemas in Java?

Barbara Streisand
Barbara StreisandOriginal
2024-12-03 21:05:12984Durchsuche

How to Validate XML Files Against XSD Schemas in Java?

So stellen Sie sicher, dass XML-Dateien den XSD-Schemas entsprechen

Die Überprüfung der Gültigkeit von XML-Dateien anhand vordefinierter XSD-Schemas ist wichtig, um die Datenintegrität sicherzustellen Einhaltung von Standards. In Java können Sie die integrierten Validierungsfunktionen der Laufzeitbibliothek nutzen.

Verwenden von javax.xml.validation.Validator

Um die Validierung durchzuführen, verwenden Sie Validator-Klasse aus der javax.xml.validation Paket. Diese Klasse bietet einen leistungsstarken Mechanismus zum Überprüfen der Konformität einer XML-Datei mit einem XSD-Schema.

Der folgende Codeausschnitt zeigt, wie eine XML-Datei validiert wird:

import javax.xml.XMLConstants;
import javax.xml.transform.Source;
import javax.xml.transform.stream.StreamSource;
import javax.xml.validation.*;
import java.net.URL;
import org.xml.sax.SAXException;
import java.io.IOException;

// Define the XML and XSD file sources
URL schemaFile = new URL("http://host:port/filename.xsd");
Source xmlFile = new StreamSource(new File("web.xml"));

// Create a SchemaFactory and Schema
SchemaFactory schemaFactory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
Schema schema = schemaFactory.newSchema(schemaFile);

// Get a Validator and perform validation
Validator validator = schema.newValidator();
try {
    validator.validate(xmlFile);
    System.out.println(xmlFile.getSystemId() + " is valid");
} catch (SAXException e) {
    System.out.println(xmlFile.getSystemId() + " is NOT valid reason:" + e);
} catch (IOException e) {}

Dieser Code validiert die WAR-Bereitstellung Deskriptor gegen das angegebene XSD-Schema. Sie können es ganz einfach anpassen, um jede XML-Datei mit Ihrem gewünschten XSD zu vergleichen.

Vermeiden Sie DOMParser zur Validierung

Es ist wichtig zu beachten, dass die Verwendung des DOMParser zur Validierung nicht empfohlen wird es sei denn, Sie beabsichtigen, ein DOM-Objektmodell zu erstellen. DOMParser erstellt während des Parsens DOM-Objekte, was verschwenderisch sein kann, wenn Sie sie nicht benötigen.

Das obige ist der detaillierte Inhalt vonWie validiere ich XML-Dateien anhand von XSD-Schemas in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn