ホームページ >Java >&#&チュートリアル >Java で XML ファイルを XSD スキーマに対して検証する方法

Java で XML ファイルを XSD スキーマに対して検証する方法

Barbara Streisand
Barbara Streisandオリジナル
2024-12-03 21:05:12937ブラウズ

How to Validate XML Files Against XSD Schemas in Java?

XML ファイルが XSD スキーマに準拠していることを確認する方法

事前定義された XSD スキーマに対する XML ファイルの有効性を検証することは、データの整合性を確保し、規格への準拠。 Java では、ランタイム ライブラリの組み込み検証機能を利用できます。

javax.xml.validation.Validator の使用

検証を実行するには、 を使用します。 Validator クラスjavax.xml.validation パッケージ。このクラスは、XML ファイルの XSD スキーマへの適合性をチェックするための強力なメカニズムを提供します。

次のコード スニペットは、XML ファイルを検証する方法を示しています。

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) {}

このコードは、WAR デプロイメントを検証します。指定された XSD スキーマに対する記述子。 XML ファイルを目的の XSD と照合してチェックするように簡単に調整できます。

検証には DOMParser を使用しない

検証に DOMParser を使用することは推奨されないことに注意してください。 DOM オブジェクト モデルを構築するつもりがある場合を除きます。 DOMParser は解析中に DOM オブジェクトを作成しますが、必要がない場合は無駄になる可能性があります。

以上がJava で XML ファイルを XSD スキーマに対して検証する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。