ʹÓà 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 =
Ïà¹ØÎĵµ£º
²»ÐèÒªÉú³Édtd,ÎÞÓÃÅäÖÃ,²»ÐèÒªÉú³É¸¨ÖúÀ࣬Ëٶȿ졣Õâ¾ÍÊÇxstream+xpp³¬Ç¿»Æ½ð×éºÏ¡£
xstream´ó¼Ò¶¼ÖªµÀÀ²£¬XML Pull ParserÊÇÒ»ÖÖ¸ßËÙµÄ ½âÎöxmlÎļþµÄ·½Ê½£¬ËÙ¶ÈÒª±È´«Í³·½Ê½¿ìºÜ¶à£¨·¢ÏÖpullʽ½âÎöÏÖÔڱȽÏÁ÷ÐÐÁË£©¡£ÏÂÃæÎÒ¸ø³ö¶àÖÖʹÓ÷½·¨µÄÀý×Ó¡£
1.×î¼òµ¥µÄʹÓ÷½·¨
ÒòΪÕâ¸öÌ«¼òµ¥£¬ËùÒÔÎÒ´ÓmoogleµÄblog http: ......
<?php
include('xml.php');
$data = XML_unserialize($xml);
?>
$xml¼´ÊÇxmlÎļþµÄÄÚÈÝ£¬$dataÊǽâÎö³öµÄÊý×飻
<?php
include('xml.php');
$xml = XML_serialize($data);
?>
ÒÔÉÏΪʹÓÃʵÀý£¬·Ö±ð½âÎöxmlÎĵµºÍÉú³Éxml¸ñʽµÄÊý¾Ý
xml.phpÔ´Âë
<?php
############################### ......
Õª×Ô--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¸ñʽ±íÊö´¦Àí£¬²¢ÀûÓù¤¾ß£¬×Ô¶¯Éú³ÉÍ·Îļþ£¬¸ø³ö¹¤ÕûµÄµ÷Ó÷½Ê½¡ ......