> Java > java지도 시간 > Java에서 XSD에 대해 XML의 유효성을 검사하는 방법은 무엇입니까?

Java에서 XSD에 대해 XML의 유효성을 검사하는 방법은 무엇입니까?

Susan Sarandon
풀어 주다: 2024-12-10 19:54:15
원래의
585명이 탐색했습니다.

How to Validate XML Against an XSD in Java?

XSD에 대해 XML 유효성 검사: 전체 가이드

XSD(XML 스키마 정의) 파일에 대해 XML 문서의 유효성을 검사하는 것은 데이터 무결성과 지정된 표준 준수를 보장하는 데 중요합니다. 이 튜토리얼에서는 XML 유효성 검사를 위한 Java 런타임 라이브러리의 기능을 자세히 살펴보고 javax.xml.validation.Validator 클래스를 사용하는 구체적인 예를 제공합니다.

javax.xml.validation API 사용

Java 런타임 라이브러리는 javax.xml.validation API를 통해 강력한 XML 유효성 검사 기능을 제공합니다. javax.xml.validation.Validator 클래스는 이 API의 초석을 형성하여 개발자가 지정된 스키마에 대해 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.File; // if you use File
import java.io.IOException;

...

// Define the XSD schema URL
URL schemaFile = new URL("http://host:port/filename.xsd");

// Create a Source object for the XML file to be validated
Source xmlFile = new StreamSource(new File("web.xml"));

// Create a SchemaFactory instance
SchemaFactory schemaFactory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);

try {
  // Create a Schema object from the XSD schema
  Schema schema = schemaFactory.newSchema(schemaFile);

  // Create a Validator object from the Schema object
  Validator validator = schema.newValidator();

  // Validate the XML file against the schema
  validator.validate(xmlFile);

  // Print a success message if validation is successful
  System.out.println(xmlFile.getSystemId() + " is valid");
} catch (SAXException e) {
  // Print an error message if validation fails due to an error
  System.out.println(xmlFile.getSystemId() + " is NOT valid reason:" + e);
} catch (IOException e) {
  // Handle IOException if file is not found or cannot be read
}
로그인 후 복사

고려 사항

목적이 DOM 개체 모델을 생성하는 것이 아니라면 유효성 검사를 위해 DOMParser를 사용하지 않는 것이 좋습니다. 이 접근 방식은 불필요한 리소스 소비로 이어질 수 있으며 효율적인 검증 방법이 아닙니다.

위 내용은 Java에서 XSD에 대해 XML의 유효성을 검사하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿