¸üÐÂʱ¼ä:2022Äê12ÔÂ01ÈÕ13ʱ30·Ö À´Ô´:ÀÖÓãµç¾º ä¯ÀÀ´ÎÊý:

£¨1£©XML¶¨Òå
À©Õ¹±ê¼ÇÓïÑÔ(Extensible Markup Language, XML) £¬ÓÃÓÚ±ê¼Çµç×ÓÎļþʹÆä¾ßÓнṹÐԵıê¼ÇÓïÑÔ£¬¿ÉÒÔÓÃÀ´±ê¼ÇÊý¾Ý¡¢¶¨ÒåÊý¾ÝÀàÐÍ£¬ÊÇÒ»ÖÖÔÊÐíÓû§¶Ô×Ô¼ºµÄ±ê¼ÇÓïÑÔ½øÐж¨ÒåµÄÔ´ÓïÑÔ¡£
XMLʹÓÃDTD(document type definition)ÎĵµÀàÐͶ¨ÒåÀ´×éÖ¯Êý¾Ý;¸ñʽͳһ£¬¿çƽ̨ºÍÓïÑÔ£¬ÔçÒѳÉΪҵ½ç¹«Èϵıê×¼XMLÊDZê׼ͨÓñê¼ÇÓïÑÔ(SGML)µÄ×Ó¼¯£¬·Ç³£ÊʺÏWeb´«Êä¡£XMLÌṩͳһµÄ·½·¨À´ÃèÊöºÍ½»»»¶ÀÁ¢ÓÚÓ¦ÓóÌÐò»ò¹©Ó¦É̵Ľṹ»¯Êý¾Ý¡£
£¨2£©JSON¶¨Òå
JSON(JavaScript Object Notation)Ò»ÖÖÇáÁ¿¼¶µÄÊý¾Ý½»»»¸ñʽ£¬¾ßÓÐÁ¼ºÃµÄ¿É¶ÁºÍ±ãÓÚ¿ìËÙ±àдµÄÌØÐÔ¡£¿ÉÔÚ²»Í¬Æ½Ì¨Ö®¼ä½øÐÐÊý¾Ý½»»»¡£JSON²ÉÓüæÈÝÐԺܸߵġ¢ÍêÈ«¶ÀÁ¢ÓÚÓïÑÔÎı¾¸ñʽ£¬Í¬Ê±Ò²¾ß±¸ÀàËÆÓÚ CÓïÑÔµÄϰ¹ß(°üÀ¨C, C++, C#, Java, JavaScript,Perl, PythonµÈ)ÌåϵµÄÐÐΪ¡£ÕâÐ©ÌØÐÔʹJSON³ÉΪÀíÏëµÄÊý¾Ý½»»»ÓïÑÔJSON»ùÓÚJavaScript Programming Language , Standard ECMA-262 3rd Edition - December 1999 µÄÒ»¸ö×Ó¼¯¡£
£¨1£©XMLµÄÓÅȱµã
XMLµÄÓŵã
A.¸ñʽͳһ£¬·ûºÏ±ê×¼£»
B.ÈÝÒ×ÓëÆäËûϵͳ½øÐÐÔ¶³Ì½»»¥£¬Êý¾Ý¹²Ïí±È½Ï·½±ã
XMLµÄȱµã
A.XMLÎļþÅÓ´ó£¬Îļþ¸ñʽ¸´ÔÓ£¬´«ÊäÕ¼´ø¿í
B.·þÎñÆ÷¶ËºÍ¿Í»§¶Ë¶¼ÐèÒª»¨·Ñ´óÁ¿´úÂëÀ´½âÎöXML£¬µ¼Ö·þÎñÆ÷¶ËºÍ¿Í»§¶Ë´úÂë±äµÃÒì³£¸´ÔÓÇÒ²»Ò×ά»¤
C.¿Í»§¶Ë²»Í¬ä¯ÀÀÆ÷Ö®¼ä½âÎö XML µÄ·½Ê½²»Ò»Ö£¬ÐèÒªÖØ¸´±àдºÜ¶à´úÂë
D.·þÎñÆ÷¶ËºÍ¿Í»§¶Ë½âÎö XML »¨·Ñ½Ï¶àµÄ×ÊÔ´ºÍʱ¼ä
£¨2£©JSONµÄÓÅȱµã
JSONµÄÓŵã
A.Êý¾Ý¸ñʽ±È½Ï¼òµ¥£¬Ò×ÓÚ¶Áд£¬¸ñʽ¶¼ÊÇѹËõµÄ£¬Õ¼Óôø¿íС
B.Ò×ÓÚ½âÎö£¬¿Í»§¶ËJavaScript¿ÉÒÔ¼òµ¥µÄͨ¹ýeval()½øÐÐJSONÊý¾ÝµÄ¶ÁÈ¡
C.Ö§³Ö¶àÖÖÓïÑÔ£¬°üÀ¨ActionScript, C, C#, ColdFusion, Java, JavaScript, Perl, PHP, Python, RubyµÈ·þÎñÆ÷¶ËÓïÑÔ£¬±ãÓÚ·þÎñÆ÷¶ËµÄ½âÎö
D.ÔÚPHPÊÀ½ç£¬ÒѾÓÐPHP-JSONºÍJSON-PHP³öÏÖÁË£¬Æ«ÓÚPHPÐòÁл¯ºóµÄ³ÌÐòÖ±½Óµ÷Óã¬PHP·þÎñÆ÷¶ËµÄ¶ÔÏó¡¢Êý×éµÈÄÜÖ±½ÓÉú³ÉJSON¸ñʽ£¬±ãÓÚ¿Í»§¶ËµÄ·ÃÎÊÌáÈ¡
E.ÒòΪJSON¸ñʽÄÜÖ±½ÓΪ·þÎñÆ÷¶Ë´úÂëʹÓ㬴ó´ó¼ò»¯ÁË·þÎñÆ÷¶ËºÍ¿Í»§¶ËµÄ´úÂ뿪·¢Á¿£¬ÇÒÍê³ÉÈÎÎñ²»±ä£¬²¢ÇÒÒ×ÓÚά»¤
JSONµÄȱµã
A.ûÓÐXML¸ñʽÕâÃ´ÍÆ¹ãµÄÉîÈëÈËÐĺÍϲÓù㷺£¬Ã»ÓÐXMLÄÇôͨÓÃÐÔ£»
B.JSON¸ñʽĿǰÔÚWeb ServiceÖÐÍÆ¹ã»¹ÊôÓÚ³õ¼¶½×¶Î¡£
£¨1£©¿É¶ÁÐÔ·½ÃæJSONºÍXMLµÄÊý¾Ý¿É¶ÁÐÔ»ù±¾Ïàͬ£¬JSONºÍXMLµÄ¿É¶ÁÐÔ¿Éν²»ÏàÉÏÏ£¬Ò»±ßÊǽ¨ÒéµÄÓï·¨£¬Ò»±ßÊǹ淶µÄ±êÇ©ÐÎʽ£¬XML¿É¶ÁÐԽϺÃЩ¡£
£¨2£©¿ÉÀ©Õ¹ÐÔ·½ÃæXMLÌìÉúÓкܺõÄÀ©Õ¹ÐÔ£¬JSONµ±È»Ò²ÓУ¬Ã»ÓÐʲôÊÇXMLÄÜÀ©Õ¹£¬JSONÈ´²»Äܵġ£
£¨3£©±àÂëÄѶȷ½ÃæXMLÓзḻµÄ±àÂ빤¾ß£¬±ÈÈçDom4j¡¢JDomµÈ£¬JSONÒ²ÓÐjson.orgÌṩµÄ¹¤¾ß£¬µ«ÊÇJSONµÄ±àÂëÃ÷ÏÔ±ÈXMLÈÝÒ×Ðí¶à£¬¼´Ê¹²»½èÖú¹¤¾ßÒ²ÄÜд³öJSONµÄ´úÂ룬¿ÉÊÇҪдºÃXML¾Í²»Ì«ÈÝÒ×ÁË¡£
£¨4£©½âÂëÄѶȷ½ÃæXMLµÄ½âÎöµÃ¿¼ÂÇ×ӽڵ㸸½Úµã£¬ÈÃÈËÍ·»èÑÛ»¨£¬¶øJSONµÄ½âÎöÄѶȼ¸ºõΪ0¡£ÕâÒ»µãXMLÊäµÄÕæÊÇû»°Ëµ¡£
£¨5£©Á÷Ðжȷ½ÃæXMLÒѾ±»Òµ½ç¹ã·ºµÄʹÓ㬶øJSON²Å¸Õ¸Õ¿ªÊ¼£¬µ«ÊÇÔÚAjaxÕâ¸öÌØ¶¨µÄÁìÓò£¬Î´À´µÄ·¢Õ¹Ò»¶¨ÊÇXMLÈÃλÓÚJSON¡£µ½Ê±AjaxÓ¦¸Ã±ä³ÉAjaj(Asynchronous Javascript and JSON)ÁË¡£
£¨6£©½âÎöÊֶη½ÃæJSONºÍXMLͬÑùÓµÓзḻµÄ½âÎöÊֶΡ£
£¨7£©Êý¾ÝÌå»ý·½ÃæJSONÏà¶ÔÓÚXMLÀ´½²£¬Êý¾ÝµÄÌå»ýС£¬´«µÝµÄËٶȸü¿ìЩ¡£
£¨8£©Êý¾Ý½»»¥·½ÃæJSONÓëJavaScriptµÄ½»»¥¸ü¼Ó·½±ã£¬¸üÈÝÒ×½âÎö´¦Àí£¬¸üºÃµÄÊý¾Ý½»»¥¡£
£¨9£©Êý¾ÝÃèÊö·½ÃæJSON¶ÔÊý¾ÝµÄÃèÊöÐÔ±ÈXML½Ï²î¡£
£¨10£©´«ÊäËÙ¶È·½ÃæJSONµÄËÙ¶ÈÒªÔ¶Ô¶¿ìÓÚXML¡£
£¨1£©¹ØÓÚÇáÁ¿¼¶ºÍÖØÁ¿¼¶ ÇáÁ¿¼¶ºÍÖØÁ¿¼¶ÊÇÏà¶ÔÀ´ËµµÄ£¬ÄÇôXMLÏà¶ÔÓÚJSONµÄÖØÁ¿¼¶ÌåÏÖÔÚÄÄÄØ?Ó¦¸ÃÌåÏÖÔÚ½âÎöÉÏ£¬XMLĿǰÉè¼ÆÁËÁ½ÖÖ½âÎö·½Ê½£ºDOMºÍSAX
·DOM
DOMÊǰÑÒ»¸öÊý¾Ý½»»»¸ñʽXML¿´³ÉÒ»¸öDOM¶ÔÏó£¬ÐèÒª°ÑXMLÎļþÕû¸ö¶ÁÈëÄڴ棬ÕâÒ»µãÉÏJSONºÍXMLµÄÔÀíÊÇÒ»ÑùµÄ£¬µ«ÊÇXMLÒª¿¼ÂǸ¸½ÚµãºÍ×ӽڵ㣬ÕâÒ»µãÉÏJSONµÄ½âÎöÄѶÈҪСºÜ¶à£¬ÒòΪJSON¹¹½¨ÓÚÁ½Öֽṹ£ºkey/value£¬¼üÖµ¶ÔµÄ¼¯ºÏ£¬ÖµµÄÓÐÐò¼¯ºÏ£¬¿ÉÀí½âΪÊý×é¡£
·SAX
SAX²»ÐèÒªÕû¸ö¶ÁÈëÎĵµ¾Í¿ÉÒÔ¶Ô½âÎö³öµÄÄÚÈݽøÐд¦Àí£¬ÊÇÒ»ÖÖÖð²½½âÎöµÄ·½·¨¡£³ÌÐòÒ²¿ÉÒÔËæÊ±ÖÕÖ¹½âÎö¡£ÕâÑù£¬Ò»¸ö´óµÄÎĵµ¾Í¿ÉÒÔÖ𲽵ġ¢Ò»µãÒ»µãµÄÕ¹ÏÖ³öÀ´£¬ËùÒÔSAXÊʺÏÓÚ´ó¹æÄ£µÄ½âÎö¡£ÕâÒ»µã£¬JSONĿǰÊÇ×ö²»µ½µÄ¡£
JSONºÍXMLµÄÇá/ÖØÁ¿¼¶µÄÇø±ðÔÚÓÚJSONÖ»ÌṩÕûÌå½âÎö·½°¸£¬¶øÕâÖÖ·½·¨Ö»ÔÚ½âÎö½ÏÉÙµÄÊý¾Ýʱ²ÅÄÜÆðµ½Á¼ºÃµÄЧ¹û£»XMLÌṩÁ˶Դó¹æÄ£Êý¾ÝµÄÖð²½½âÎö·½°¸£¬ÕâÖÖ·½°¸ºÜÊʺÏÓÚ¶Ô´óÁ¿Êý¾ÝµÄ´¦Àí
£¨2£©¹ØÓÚÊý¾Ý¸ñʽ±àÂë¼°½âÎöÄѶÈ
·ÔÚ±àÂë·½Ãæ
ËäÈ»XMLºÍJSON¶¼Óи÷×ԵıàÂ빤¾ß£¬µ«ÊÇJSONµÄ±àÂëÒª±ÈXML¼òµ¥£¬¼´Ê¹²»½èÖú¹¤¾ß£¬Ò²¿ÉÒÔд³öJSON´úÂ룬µ«ÒªÐ´³öºÃµÄXML´úÂë¾ÍÓеãÀ§ÄÑ;ÓëXMLÒ»Ñù£¬JSONÒ²ÊÇ»ùÓÚÎı¾µÄ£¬ÇÒËüÃǶ¼Ê¹ÓÃUnicode±àÂ룬ÇÒÆäÓëÊý¾Ý½»»»¸ñʽXMLÒ»Ñù¾ßÓпɶÁÐÔÖ÷¹ÛÉÏÀ´¿´£¬JSON¸üΪÇåÎúÇÒÈßÓà¸üÉÙЩ¡£JSONÍøÕ¾ÌṩÁ˶ÔJSONÓï·¨µÄÑϸñÃèÊö£¬Ö»ÊÇÃèÊö½Ï¼ò¶Ì¡£´Ó×ÜÌåÀ´¿´£¬XML±È½ÏÊʺÏÓÚ±ê¼ÇÎĵµ£¬¶øJSONÈ´¸üÊÊÓÚ½øÐÐÊý¾Ý½»»»´¦Àí¡£
·ÔÚ½âÎö·½Ãæ
ÔÚÆÕͨµÄwebÓ¦ÓÃÁìÓò£¬¿ª·¢Õß¾³£ÎªXMLµÄ½âÎöÉËÄԽÎÞÂÛÊÇ·þÎñÆ÷¶ËÉú³É»ò´¦ÀíXML£¬»¹Êǿͻ§¶ËÓÃJavaScript½âÎöXML£¬¶¼³£³£µ¼Ö¸´ÔӵĴúÂ룬¼«µÍµÄ¿ª·¢Ð§ÂÊʵ¼ÊÉÏ£¬¶ÔÓÚ´ó¶àÊýWeb Ó¦ÓÃÀ´Ëµ£¬ËûÃǸù±¾²»ÐèÒª¸´ÔÓµÄXMLÀ´´«ÊäÊý¾Ý£¬ XMLÐû³ÆµÄÀ©Õ¹ÐÔÔڴ˾ͺÜÉÙ¾ßÓÐÓÅÊÆ£¬Ðí¶àAjaxÓ¦ÓÃÉõÖÁÖ±½Ó·µ»ØHTMLƬ¶ÎÀ´¹¹½¨¶¯Ì¬WebÒ³Ãæ¡£ºÍ·µ»ØXML²¢½âÎöËüÏà±È£¬·µ»ØHTMLƬ¶Î´ó´ó½µµÍÁËϵͳµÄ¸´ÔÓÐÔ£¬µ«Í¬Ê±È±ÉÙÁËÒ»¶¨µÄÁé»îÐÔ¡£Í¬XML»òHTMLƬ¶ÎÏà±È£¬Êý¾Ý½»»»¸ñʽJSONÌṩÁ˸üºÃµÄ¼òµ¥ÐÔºÍÁé»îÐÔ¡£ÔÚWeb SeriviceÓ¦ÓÃÖУ¬ÖÁÉÙ¾ÍĿǰÀ´ËµXMLÈÔÓв»¿É¶¯Ò¡µÄµØÎ»¡£
£¨3£©ÊµÀý±È½ÏXMLºÍJSON¶¼Ê¹Óýṹ»¯·½·¨À´±ê¼ÇÊý¾Ý£¬ÏÂÃæÀ´×öÒ»¸ö¼òµ¥µÄ±È½Ï¡£
ÓÃXML±íʾÖйú²¿·ÖÊ¡ÊÐÊý¾ÝÈçÏ£º
<?xml version="1.0" encoding="utf-8" ?> <country> <name>Öйú</name> <province> <name>ºÚÁú½</name> <citys> <city>¹þ¶û±õ</city> <city>´óÇì</city> </citys> </province> <province> <name>¹ã¶«</name> <citys> <city>¹ãÖÝ</city> <city>ÉîÛÚ</city> <city>Ö麣</city> </citys> </province> <province> <name>̨Íå</name> <citys> <city>̨±±</city> <city>¸ßÐÛ</city> </citys> </province> <province> <name>н®</name> <citys> <city>ÎÚ³ľÆë</city> </citys> </province> </country>
ÓÃJSON±íʾÖйú²¿·ÖÊ¡ÊÐÊý¾ÝÈçÏ£º
{
name: "Öйú",
provinces: [
{
name: "ºÚÁú½",
citys: {
city: ["¹þ¶û±õ", "´óÇì"]
}
},
{
name: "¹ã¶«",
citys: {
city: ["¹ãÖÝ", "ÉîÛÚ", "Ö麣"]
}
},
{
name: "̨Íå",
citys: {
city: ["̨±±", "¸ßÐÛ"]
}
},
{
name: "н®",
citys: {
city: ["ÎÚ³ľÆë"]
}
}
]
}
±àÂëµÄ¿É¶ÁÐÔÀ´Ëµ£¬XMLÓÐÃ÷ÏÔµÄÓÅÊÆ£¬±Ï¾¹ÈËÀàµÄÓïÑÔ¸üÌù½üÕâÑùµÄ˵Ã÷½á¹¹¡£
JSON¶ÁÆðÀ´¸üÏñÒ»¸öÊý¾Ý¿é£¬¶ÁÆðÀ´¾Í±È½Ï·Ñ½âÁË¡£²»¹ý£¬ÎÒÃǶÁÆðÀ´·Ñ½âµÄÓïÑÔ£¬Ç¡Ç¡ÊÇÊʺϻúÆ÷ÔĶÁ£¬ËùÒÔͨ¹ýJSONµÄË÷Òýcountry.provinces[0].name¾ÍÄܹ»¶ÁÈ¡“ºÚÁú½”Õâ¸öÖµ±àÂëµÄÊÖдÄѶÈÀ´Ëµ£¬XML»¹ÊÇÊæ·þһЩ£¬ºÃ¶Áµ±È»¾ÍºÃд¡£²»¹ýд³öÀ´µÄ×Ö·ûJSON¾ÍÃ÷ÏÔÉٺܶࡣȥµô¿Õ°×ÖÆ±íÒÔ¼°»»Ðеϰ£¬JSON¾ÍÊÇÃÜÃÜÂéÂéµÄÓÐÓÃÊý¾Ý£¬¶øXMLÈ´°üº¬ºÜ¶àÖØ¸´µÄ±ê¼Ç×Ö·û¡£
±±¾©Ð£Çø