ʹÓà XStream ÔÚ JavaBean Óë XML/JSON Ö®¼äÏ໥ת»»
XML ºÍ JSON Êǵ±½ñ³£ÓõÄÁ½ÖÖÊý¾ÝÃèÊöÓë´«ÊäµÄ¸ñʽ£¬ÌرðÊÇÉæ¼°µ½ JS ʱʹÓà JSON ÆÄΪƵ·±¡£×ÔÈ»£¬ÔÚ Java µÄÊÀ½çÀïÉÙ²»ÁËÍê³É JavaBean ÓëÕâÁ½ÖÖ¸ñʽÏ໥ת»»µÄ×é¼þ£¬ÄǾÍÊÇ XStream ºÍ JSON-lib¡£ÕâÀïÎÒ¼òµ¥¼ÇÏ XStream µÄÓ÷¨¡£
ÆäʵÏàÀàËÆµÄ¹¤¾ßÔçÒÑÓÐÖ®¡£Èç¹ûÓùý DWR µÄͬ־£¬Ò»¶¨ÓÐÓ¡Ïñ£¬DWR ½øÐÐÔ¶³Ì·½·¨µ÷ÓÃʱҲÄÜΪÄãÍê³É JavaBean ºÍ JSON ¸ñʽµÄË«Ïòת»»µÄ£¬ËùÒÀÀµµÄÊÇËüµÄ¸÷ÖÖ Converter¡£ÔÙÒªÊÇ¶Ô Struts1 µÄϸ½ÚÓÐËù×¢ÒâµÄ»°£¬Struts1 µÄ ActionServlet ÔÚ³õʼ»¯ struts-config.xml ʱÊÇͨ¹ý commons-digester À´Íê³É XML µ½ JavaBean ת»»µÄ¡£ÏàÓ¦µÄ Apache Ò²ÓÐÒ»¸ö commons-betwixt ʵÏÖÁË JavaBean µ½ XML µÄÉú³É¡£
¶øÎÒÕâÀïҪ˵µÄ XStream(http://xstream.codehaus.org) °Ñ JavaBean Óë XML/JSON ¼äµÄË«Ïòת»»Í³Í³ÊµÏÖÁË£¬¶ø JSON-lib ÔòÈçÆäÃû£¬¹¦ÄÜÌ«ÏÔ¼òªÁË¡£ÒªÊ¹Óà XStream£¬ÐèÏÂÔØµ½ xstream°ü£¬µ±Ç°°æ±¾ÊÇ 1.3.1¡£È»ºó°Ñ xstream-1.x.x.jar Ìí¼Óµ½ÏîÄ¿µÄ Classpath ÉÏ£¬¿É²»ÒÀÀµÓÚÆäËû°ü¡£ÔÚijЩÓÐÒªÇóʱºò²ÅÐèÒªÓõ½ lib Ŀ¼ÖÐµÄÆäËû°ü£¬ÏÂÃæ»áÌáµ½¡£
¼òµ¥ËµÃ÷ XStream µÄʹÓðɣ¬·ÖΪ JavaBean -> XML¡¢JavaBean -> JSON¡¢ XML -> JavaBean¡¢JSON -> JavaBean ¼¸²¿·ÖÄÚÈÝ¡£ÔÚ¿ªÊ¼Àý×Ó֮ǰ£¬Ïȶ¨ÒåÈý¸öÀà(¶¼ÔÚ com.unmi.model °üÖÐ)£º
public class Customer {
private int custId;
private String custName;
private List<Order> orders;
//setter/getter ºÍ¹¹Ôì·½·¨ÂÔ
}
public class Order {
private int orderId;
private String orderName;
private Product[] products;
//setter/getter ºÍ¹¹Ôì·½·¨ÂÔ
}
public class Product {
private int prodId;
private String prodName;
private double prodPrice;
//setter/getter ºÍ¹¹Ôì·½·¨ÂÔ
}
Customer/Order/Product£¬ËüÃÇÖ®¼äµÄ¹ØÏµ£¬ÒÀ´ÎÊÇÒ»¶Ô¶à¡¢Ò»¶Ô¶àµÄ£¬ÎªÑÝʾĿµÄ£¬·Ö±ðÓÃÁË List ºÍÊý×é×÷Ϊ¾ÛºÏÊôÐÔ¡£
1. JavaBean -> XML
public static void main(String[] args) {
//¹¹Ôì½Ó½üʵ¼ÊµÄ Customer ¶ÔÏó
Product p1 = new Product(1001,"µçÄÔ",4000);
Product p2 = new Product(1002,"¿Õµ÷",2000);
Product[] prods1 = new Product[]{p1,p2};
Order order1 =
Ïà¹ØÎĵµ£º
һЩ×Ö·ûÔÚ URL »ò XML ÎĵµÖÐʹÓÃʱÓÐÌØÊâµÄº¬Ò壬Òò´Ë±ØÐëÕë¶ÔÕâЩº¬Òå¶Ô×Ö·û×öÊʵ±±àÂëÒÔʹÆäÉúЧ¡£
URL ÖеÄÌØÊâ×Ö·û
ÔÚ URL ÉÏÖ´ÐеIJéѯÖУ¬ÌØÊâ×Ö·û±»Ö¸¶¨Îª %xx£¬ÆäÖÐ xx ÊÇ×Ö·ûµÄÊ®Áù½øÖÆÖµ¡£Ï±íÁгöÁËÕâÐ©ÌØÊâ×Ö·û²¢ÃèÊöÁËËüÃǵĺ¬Òå¡£Óйظü¶àÐÅÏ¢£¬Çë²Î¼û http://www.faqs.org/rfcs/rfc1738.html ÖÐµÄ RFC ......
£¨1£©XML
XMLÊÇThe Extensible Markup Language(¿ÉÀ©Õ¹±êʶÓïÑÔ)µÄ¼òд¡£Ä¿Ç°ÍƼö×ñѵÄÊÇW3CÓÚ2000Äê10ÔÂ6ÈÕ·¢²¼µÄXML1.0£¬²Î¿¼£¨www.w3.org/TR/2000/REC-XML-20001006£©¡£ºÍHTMLÒ»Ñù£¬XMLͬÑùÀ´Ô´ÓÚSGML£¬µ«XMLÊÇÒ»ÖÖÄܶ¨ÒåÆäËûÓïÑÔµÄÓï¡£XML×î³õÉè¼ÆµÄÄ¿µÄÊÇÃÖ²¹HTMLµÄ²»×㣬ÒÔÇ¿´óµÄÀ©Õ¹ÐÔÂú×ãÍøÂçÐÅÏ¢·¢²¼µÄÐèÒª£¬ºó ......
--±¾ÎÄÕª×Ôhttp://www.moandroid.com/?p=508
By: º£ÊÐò×Â¥ | In: Android¿ª·¢
3 ¾Å 2009
XML ¾³£ÓÃ×÷ Internet ÉϵÄÒ»ÖÖÊý¾Ý¸ñʽ£¬ÆäÎļþ¸ñʽÏë±Ø´ó¼Ò¶¼±È½ÏÇå³þ£¬ÔÚÕâÀïÎÒ½áºÏAndroidƽ̨£¬À´ËµÃ÷Android SDKÌṩµÄ¶ÁдXMLµÄpackage¡£
Ê×ÏȽéÉÜÏÂAndroid SDKÓëJava SDKÔÚ¶ÁдXMLÎļþ·½Ã棬Êý¾Ý°üÖ®¼äµÄ¹ØÏµ¡£Android ......
Õª×Ô--http://www.moandroid.com/?p=868
¶ÁдXML£¨Ï£©——´´½¨XMLÎĵµ
By: º£ÊÐò×Â¥ | In: Android¿ª·¢
23 ¾Å 2009
ÔÚÇ°ÃæµÄ2ƪÎÄÕÂAndroid¶ÁдXML£¨ÉÏ£©——package˵Ã÷¡¢Android¶ÁдXML£¨ÖУ©——SAXÖÐÏë±Ø´ó¼Ò¶ÔXMLÎļþ¶ÁÈ¡µÄ·½·¨ÒѾ±È½ÏÊìϤÁË£¬ÔÚÕâÀïÎÒÃǾͲ»¶à˵ÁË£¬Ö±½Ó˵Ã÷ ......
¡¡¡¡¼ÌÐøÑ§Ï°D-Bus¡£Ö®Ç°Ñ§Ï°ÁËʹÓõײãµÄAPIÀ´·¢ËÍ£¬¼àÌýÏûÏ¢µÄ·½Ê½¡£ÔÚ
D-
Busѧϰ£¨ËÄ£©£º»ù´¡Ð¡Àý×Ó£¨Í¬²½ºÍÒì²½£©
Ö®ÖУ¬ÎÒÃǸø³öÁËÀûÓÃproxy½øÐз¢ËÍmethod_call£¬²¢µÈ´ýmethod_reply»òÕßerrorµÄclientÇé¿ö¡£ÔÚD-BusÖУ¬¿ÉÒÔ½«D-Bus½Ó¿Ú¶¨ÒåÓÃXML¸ñʽ±íÊö´¦Àí£¬²¢ÀûÓù¤¾ß£¬×Ô¶¯Éú³ÉÍ·Îļþ£¬¸ø³ö¹¤ÕûµÄµ÷Ó÷½Ê½¡ ......