´«ÖDz¥¿Í—XML»ù´¡£¨Ï£©
½ñÌì¼ÌÐø½²XML£¬ÕùÈ¡ÔÚÏÂÎç5µãǰռÁìXML¸ßµØ¡£Ò»¹²Èý¸öÖ÷ÒªÄÚÈÝ£ºSAX½âÎö¼¼Êõ£¬DOM4JºÍSCHEMA¡£
Ê×ÏÈÊÇSAX½âÎö¼¼Êõ£ºSAX²ÉÓÃʼþ´¦ÀíµÄ·½Ê½½âÎöXMLÎļþ¡£ÀûÓà SAX ½âÎö XML Îĵµ£¬Éæ¼°Á½¸ö²¿·Ö£º½âÎöÆ÷ºÍʼþ´¦ÀíÆ÷¡£
½âÎöÆ÷¸ºÔð¶ÁÈ¡ XML Îĵµ£¬²¢Ïòʼþ´¦ÀíÆ÷·¢ËÍʼþ
ʼþ´¦ÀíÆ÷¸ºÔð¶Ôʼþ×ö³öÏàÓ¦£¬¶Ô´«µÝµÄ XML Êý¾Ý½øÐд¦Àí
1.ʹÓÃSAXParserFactory´´½¨SAX½âÎö¹¤³§
SAXParserFactory spf = SAXParserFactory.newInstance();
2.ͨ¹ýSAX½âÎö¹¤³§µÃµ½½âÎöÆ÷¶ÔÏó
SAXParser sp = spf.newSAXParser();
3.ͨ¹ý½âÎöÆ÷¶ÔÏóµÃµ½Ò»¸öXMLµÄ¶ÁÈ¡Æ÷
XMLReader xmlReader = sp.getXMLReader();
4.ÉèÖöÁÈ¡Æ÷µÄʼþ´¦ÀíÆ÷
xmlReader.setContentHandler(new BookParserHandler());
5.½âÎöxmlÎļþ
xmlReader.parse("book.xml");
µ±ÔÚµÚÈý²½Äõ½Ò»¸öXMLµÄ¶ÁÈ¡Æ÷ºó£¬¾ÍÓ¦¸ÃÏòʼþ´¦ÀíÆ÷·¢ËÍʼþÁË£¬ÕâʱÄãËùдµÄʼþ´¦ÀíµÄ·½·¨¾ÍÓ¦¸ÃʵÏÖContentHandlerµÄËùÓз½·¨£¬ÒòΪContentHandlerÊÇÒ»¸ö½Ó¿ÚÀ࣬ÕâÑùÒ»À´¾Í±È½ÏÂé·³ÁË£¬ÒòΪÎÒÃÇÖ»¹ØÏµÕâ¸ö½Ó¿ÚÀàÖеÄÈý¸ö·½·¨£ºcharacters£¨²ÎÊý...£©£¬startElement£¨²ÎÊý...£©£¬endElement(²ÎÊý...)¡£
ÏÖÔÚÎÒÃDz鿴APIÎĵµ·¢ÏÖSUN¹«Ë¾ÒѾΪÎÒÃÇдºÃÁËһϵÁеÄʵÏÖÀ࣬ÕâÀïÎÒÃÇÓÃDefaultHandlerÕâ¸öʵÏÖÀà¡£ÔÚÕâ¸öÀàÀïÃæÎÒÃÇÖØÐ´ÁËÉÏÃæÈý¸ö·½·¨£¬À´ÊµÏÖÎÒÃÇÏëÒªµÄ¹¦ÄÜ¡£
½ÓÏÂÀ´¿ªÊ¼ÁËdom4j¡£Dom4jÊÇÒ»¸ö¼òµ¥¡¢Áé»îµÄ¿ª·ÅÔ´´úÂëµÄ¿â¡£dom4jʹÓýӿںͳéÏó»ùÀ࣬Dom4jµÄAPIÏà¶ÔÒª¸´ÔÓһЩ£¬µ«ËüÌṩÁ˸üºÃµÄÁé»îÐÔ¡£Dom4jÊÇÒ»¸ö·Ç³£ÓÅÐãµÄJava XML API£¬¾ßÓÐÐÔÄÜÓÅÒì¡¢¹¦ÄÜÇ¿´óºÍ¼«Ò×ʹÓõÄÌØµã¡£ÏÖÔںܶàÈí¼þ²ÉÓõÄDom4j£¬ÀýÈçHibernate£¬°üÀ¨sun¹«Ë¾×Ô¼ºµÄJAXMÒ²ÓÃÁËDom4j¡£Ê¹ÓÃDom4j¿ª·¢£¬ ÐèÒªÏÂÔØdom4jÏàÓ¦µÄjarÎļþ¡£
DOM4jÖУ¬»ñµÃDocument¶ÔÏóµÄ·½Ê½ÓÐÈýÖÖ£º
1.¶ÁÈ¡XMLÎļþ,»ñµÃdocument¶ÔÏó:
SAXReader reader = new SAXReader();
Document document = reader.read(new File("input.xml"));
2.½âÎöXMLÐÎʽµÄÎı¾,µÃµ½document¶ÔÏó
String text = "<members></members>";
Document document = DocumentHelper.parseTex
Ïà¹ØÎĵµ£º
Ò»¸ö¶¨ÒåEmailµÄÀý×Ó
<?xml version="1.0">
<!DOCTYPE message[
<!ELEMENT message(header,body,signature,footer)> --¶¨ÒåÁËmessageµÄ×ÓÔªËØ
<!ELEMENT header(date,from,to,subject,banner)> --header»¹ÓÐ×ÓÔªËØ
<!ELEMENT ......
import java.io.File;
import java.util.concurrent.CountDownLatch;
import com.sleepycat.db.Environment;
import com.sleepycat.db.EnvironmentConfig;
import com.sleepycat.db.LockDetectMode;
import com.sleepycat.dbxml.XmlContainer;
import com.sleepycat.dbxml.XmlContainerConfig;
im ......
ÏÖÔںܶàÈí¼þ¶¼ÊÇÒÔxmlÎļþ×÷ΪÊý¾ÝÔ´£¬¶øºÜ¶àÊý¾Ý¹¤¾ßÈçpbµÈÈ´Ö»ÄÜÁí´æÎªtxt¡¢excelµÈ¸ñʽ£¬Îª´ËÐèÒªÒ»¹¤¾ßÄܽ«txtÎı¾×ª»»³ÉxmlÎļþ¡£googleÁËһϣ¬Ã»ÕÒµ½ºÏÊʵ쬳嶝֮ÏÂÓÃC#дÁËÒ»¸ötxtÎı¾×ªxml¸ñʽÎı¾µÄС³ÌÐò£¬´úÂëÈçÏ¡£
н¨Ò»¸öw ......
1£®Ê²Ã´ÊÇXML£¿
XML ¿ª·¢ÕßÃÇ»á¸æËßÄ㣬ÊÂʵÉÏXML²¢²»ÊÇÒ»ÖÖÓïÑÔ£¬¶øÊÇÒ»ÖÖÓÃÀ´¶¨ÒåÆäËüÓïÑÔµÄϵͳ¡£¿ÉÄÜÄãÒѾÌý¹ý£¬»òÐíÉõÖÁ×Ô¼º³¢ÊÔ¹ýһЩÕâÑùµÄÓïÑÔ??±ÈÈç΢ÈíÎªÍÆ£¨push£©¼¼ÊõËùÍÆ³öµÄƵµÀ¶¨Òå¸ñʽ£¨Channel Definition Format£©¡£
W3CÊÇ»¥Á¬ÍøÉÏһЩ¹«Óñê×¼µÄ¿ª·¢Õߣ¬ËûÍÆ³öÁËһϵÁкÍXMLÏà¹ØµÄ±ê× ......
ÄãÖªµÀXMLÎļþ°É£¿£¨²»ÖªµÀµÄGOOGLEÈ¥£¡£©ÄÇÄãÌý˵¹ýÔÚXMLÀïÊéдSQLÓï¾äÂ𣿻»¾ä»°Ëµ£¬°ÑÄãµÄÏîÄ¿ÀïËùÓÐSQLÓï¾ä´æ´¢ÔÚXMLÎļþÀÄãÌý˵¹ýÂð£¿Äã×ö¹ýÂð£¿
ÎÒÍ·´ÎÌý˵ÊÇС°¬¸æËßÎҵģ¬ÎҸҿ϶¨ËûÊǸöÕâ·½ÃæµÄ¸ßÊÖ£¬ºÇºÇ£¨ÔÞÒ»¸ö£¬µ½´ËΪֹ£¡£©
ÄǸøÄãչʾһÏ£¬ÔÚXMLÀïÊéдSQLÓï¾ä°É
<commands>
<comman ......