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