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ÄÚ´æÐ¹Â©£¬×ß¿ª£¡
2005Äê09ÔÂ13ÈÕ ×÷ÕߣºStaffan Larsen;glorywine ÔðÈα༣ºmoningfeng
url£ºhttp://pcedu.pconline.com.cn/empolder/gj/java/0509/699218_1.html
¡¡¡¡ÔÎĵØÖ·:
¡¡¡¡http://dev2dev.bea.com/pub/a/2005/06/memory_leaks.html
¡¡¡¡ÖÐÎĵØÖ·:
¡¡¡¡http://www.matrix.org.cn/resource/article/43/ ......
½ñÌìÔÚÑо¿JAX-WS£¬Å¼È»·¢ÏÖjava6µÄÖÐÎÄAPIÔÚjavax.xml.ws°ü϶ªÁËһЩannotation£¬Ò²ÊǺÜżȻ·¢ÏÖÕâÖÖÇé¿ö£¬ÎÒÔÚдjava´úÂ룬·¢ÏÖ¿ÉÒÔÓõÄannotation£¬µ«ÊÇÔÚÖÐÎÄapiÀïÕÒ²»µ½£¬ºóÀ´ÕÒÁËÒ»ÏÂÓ¢Îİæzpi£¬²Å·¢ÏÖÖÐÎİ涪ÁËһЩannotation£¬ÔÝʱ²»Çå³þ±ðµÄ°üÀïÓÐûÓжªÊ§µÄÇé¿ö¡£ÎÒÊÇʹÓÃÔÚÏßAPI£¬ºóÀ´·¢ÏÖÏÂÔØ°æºÍÔÚÏß°æÒ»Ñù¶ ......
Õâ¸öЧ¹ûÓ¦¸Ã²»ËãÊ²Ã´Ï¡Ææ£¬ÍøÉÏÒ²ÓÐÏֳɵĴúÂ룬ÎÒÕâ¸öÒ²Ã»Ê²Ã´ÌØ±ðµÄµØ·½£¬Ö»ÊÇÒòΪÎÒ×Ô¼ºÐ´µÄ£¬Ò²ËãÊÇΪѧϰDOMºóÒ»¸öÁ·Ï°£»ÔÚIEϲâÊÔͨ¹ý£»
ʵÏÖЧ¹ûÊÇÕâÑùµÄ£º
¶ÁÈ¡XMLÎĵµ£»
²ÉÓõݹéÉú³ÉÎÞÏÞ¼¶µÄÊ÷Ðβ˵¥£»
Äܹ»ÏìÓ¦Êó±êʼþ£¬Õ¹¿ªÓë²ðµþ×Ó¼¶²Ëµ¥£»
Ê×ÏÈÊÇÉú³ÉÒ»¸öXMLÎĵµ£¬ÎÒÓõÄÊÇXML SpyµÄ±à¼Æ÷£»
< ......
string file = "c:\\work.xml";
private void btnCearte_Click(object sender, EventArgs e)
{
XmlDocument doc = new XmlDocument();
  ......
XML¼´extensibe markup languageµÄËõд£¬Ò²¾ÍÊÇ¿ÉÀ©Õ¹±êʶÓïÑÔ¡£ÓÉÓÚÆä¿ª·ÅÐÔ£¬Ô½À´Ô½¶àµÄÈí¼þ²ÉÓÃËü×÷ΪÃèÊöÓïÑÔ£»ÓÉÓÚÆäÆ½Ì¨ÎÞ¹ØÐÔ£¬Ô½À´Ô½¶àµÄϵͳ²ÉÓÃËü×÷ΪÊý¾Ý´«µÝÖн顣¼ÆËã»úÐÐÒµÒѾ°ÑXMLΪÊý¾Ý½»»»µÄ±ê×¼£¬²¢ÌṩÁËÏ൱ÊýÁ¿µÄÖ§³Ö¹¤¾ß¡£µ« ......