java ÀûÓÃXSD ÑéÖ¤XMLÎļþ
XSDÎļþ £¨XML Schema ÓïÑÔÒ²³Æ×÷ XML Schema ¶¨Ò壨XML Schema Definition£¬XSD£©¡£ ¾ßÌåʹÓ÷½·¨ºÍ¶¨ÒåÇë²Î¿´£º
http://www.w3school.com.cn/schema/index.asp
java×Ôjdk1.5ÒÔÉÏÐÂÔöÁËSchemaFactoryÀà ¿ÉÒÔʵÏÖ¶ÔXSDÑéÖ¤µÄÖ§³Ö£¬Ê¹ÓÃÆðÀ´Ò²ºÜ·½±ã¡£
ÒÔÏ´úÂë¿ÉÓÃÔÚJDK1.5+ ÑéÖ¤xml
public class SimpleErrorHandler implements ErrorHandler {
public void warning(SAXParseException e) throws SAXException {
System.out.println(e.getMessage());
}
public void error(SAXParseException e) throws SAXException {
System.out.println(e.getMessage());
}
public void fatalError(SAXParseException e) throws SAXException {
System.out.println(e.getMessage());
}
}
SAXParserFactory factory = SAXParserFactory.newInstance();
SchemaFactory schemaFactory =
SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema");
factory.setSchema(schemaFactory.newSchema(
new Source[] {new StreamSource("contacts.xsd")}));
SAXParser parser = factory.newSAXParser();
SAXReader reader = new SAXReader(parser.getXMLReader());
reader.setValidation(false);
reader.setErrorHandler(new SimpleErrorHandler());
reader.read("contacts.xml");
¾ßÌåµÄ¿É²Î¿´£ºhttp://www.edankert.com/validate.html
ÔÚJDK1.5֮ǰ²»Ìṩ¶ÔXSDµÄÖ§³Ö£¬ÒÔΪÔÚJDK1.5֮ǰÖÚ¶àµÄXML APIÒѾÂúÌì·É ¿ÉʹÓÃDOM4j + xerces Èç¹û¶ÁÈ¡XML½ÚµãʹÓÃXPATHµÄ»° ÐèÒªsaxpath.jar
JDK1.4+DOM4J+xerces ÑéÖ¤xmlÎļþ
public class ParserErrorHandler implements ErrorHandler {
private static final Logger logger = Logger.getLogger(ParserErrorHandler.class);
public void error(SAXParseException e) throws SAXException {
//logger.error(e);
throw e;
}
public void fatalError(SAXParseException e) throws SAXException {
//logger.error(e);
throw e;
}
public void warning(SAXParseException e) throws SAXException {
//logger.error(e);
throw e;
}
}
--¶¨ÒåSAXReader ºó¶ÁÈ¡xmlÎļþÈç¹û²»·ûºÏXSD¹æÔòµÄ»°¾Í»áÅÜÒì³£
SAXReader reader = new SAXReader();
reader.setValidation(true);
Ïà¹ØÎĵµ£º
java ÓÃrmi±àд¿Í»§/·þÎñ³ÌÐò
³öÏÖaccess denied ÎÊÌâ
ÒòΪ²»ÖªµÀÔõôÅäÖà ²ßÂÔÎļþ ¾Í½«¿Í»§¶ËµÄSystem.setSecurityManager(new RMISecurityManager())ɾÁË£¬ÔËÐÐjava ProductClient
³É¹¦£¡
ÅäÖòßÂÔÎļþµÃÖ®ºó²ÅŪÀ² ......
ÒÑÖªÓÐÒ»¸öXMLÎļþ£¨bookstore.xml£©ÈçÏ£º
<?xml version="1.0" encoding="gb2312"?>
<bookstore>
<book genre="fantasy" ISBN="2-3631-4">
<title>Oberon's Legacy</title>
<author>Corets, Eva</author>
<price>5.95</price> ......
ÀûÓÃXPath¶ÁÈ¡XmlÎļþ
Ö®ËùÒÔÒªÒýÈëXPathµÄ¸ÅÄĿµÄ¾ÍÊÇΪÁËÔÚÆ¥ÅäXMLÎĵµ½á¹¹Ê÷ʱÄܹ»×¼È·µØÕÒµ½Ä³Ò»¸ö½ÚµãÔªËØ¡£¿ÉÒÔ°ÑXPath±È×÷Îļþ¹ÜÀí·¾¶£ºÍ¨¹ýÎļþ¹ÜÀí·¾¶£¬¿ÉÒÔ°´ÕÕÒ»¶¨µÄ¹æÔò²éÕÒµ½ËùÐèÒªµÄÎļþ£»Í¬Ñù£¬ÒÀ¾ÝXPathËùÖÆ¶¨µÄ¹æÔò£¬Ò²¿ÉÒԺܷ½±ãµØÕÒµ½XML½á¹¹ÎĵµÊ÷ÖеÄÈκÎÒ»¸ö½Úµã.
¡¡¡¡²»¹ý£¬ÓÉÓÚXPath¿ÉÓ¦Ó ......
ÒÑÖªÓÐÒ»¸öXMLÎļþ£¨bookstore.xml£©ÈçÏ£º
<?xml version="1.0" encoding="gb2312"?>
<bookstore>
<book genre="fantasy" ISBN="2-3631-4">
<title>Oberon's Legacy</title>
<author>Corets, Eva</author>
<price>5.95</price>
</book>
< ......