<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 122,  comments - 25,  trackbacks - 0
    XML/JSON的操作類庫,codehaus的xstream,很簡單的在xml/json和java對象間轉換。

    1、所需jar包:xstream-[version].jarxpp3-[version].jar 。xpp3不是必須的,也可以用標準的JAXP DOM parser 來代替,如:
    XStream xstream = new XStream(new DomDriver()); // does not require XPP3 library

    另外,通過alias可實現xml屬性的支持。更多功能,請參閱 Tutorial

    2、XML轉換代碼片段:
    Class 轉換為 xml 的代碼片段:
    XStream xstream = new XStream();
    xstream.alias("person", Person.class);
    xstream.alias("phonenumber", PhoneNumber.class);
    Person joe = new Person("Joe""Walnes");
    joe.setPhone(
    new PhoneNumber(123"1234-456"));
    joe.setFax(
    new PhoneNumber(123"9999-999"));
    String xml 
    = xstream.toXML(joe);

    The resulting XML looks like this:
    <person>
      
    <firstname>Joe</firstname>
      
    <lastname>Walnes</lastname>
      
    <phone>
        
    <code>123</code>
        
    <number>1234-456</number>
      
    </phone>
      
    <fax>
        
    <code>123</code>
        
    <number>9999-999</number>
      
    </fax>
    </person>

    xml轉換為java類的代碼片段:
    Person newJoe = (Person)xstream.fromXML(xml);

    3、JSON
    另需jar包:jettison.jar 、stax-api.jar。JSON Turorial

    Write to json:

    package org.sensatic.json.test;

    import com.thoughtworks.xstream.XStream;
    import com.thoughtworks.xstream.io.json.JettisonMappedXmlDriver;

    public class WriteTest {
        
    public static void main(String[] args) {
            Product product 
    = new Product("Banana""123"23.00);
            XStream xstream 
    = new XStream(new JettisonMappedXmlDriver());
            xstream.alias(
    "product", Product.class);
            System.out.println(xstream.toXML(product));    
        }
    }

    Read from json:
    package org.sensatic.json.test;

    import com.thoughtworks.xstream.XStream;
    import com.thoughtworks.xstream.io.json.JettisonMappedXmlDriver;

    public class ReadTest {
        
    public static void main(String[] args) {
            String json 
    = "{\"product\":{\"name\":\"Banana\",\"id\":\"123\""
                
    + ",\"price\":\"23.0\"}}";
                
            XStream xstream 
    = new XStream(new JettisonMappedXmlDriver());
            xstream.alias(
    "product", Product.class);
            Product product 
    = (Product)xstream.fromXML(json);
            System.out.println(product.getName());
        }
    }

    And that's how simple XStream is!
    posted on 2008-01-15 10:11 josson 閱讀(942) 評論(0)  編輯  收藏 所屬分類: java 開發
    <2008年1月>
    303112345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    常用鏈接

    留言簿(3)

    隨筆分類

    隨筆檔案

    收藏夾

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 免费一级毛片在线播放不收费| 亚洲欧洲专线一区| 亚洲成AⅤ人影院在线观看| 黄页网站免费观看| 国产拍拍拍无码视频免费| 黄色毛片免费网站| 亚洲av永久无码精品秋霞电影秋 | 亚洲日产2021三区在线| 亚洲日韩欧洲无码av夜夜摸| 国产免费直播在线观看视频| 91网站免费观看| 免费观看91视频| 免费无码又爽又刺激网站| 成人午夜免费视频| 麻豆亚洲AV成人无码久久精品| 中文字幕乱码亚洲无线三区 | 国产精品永久免费| 免费无码一区二区| 成人精品国产亚洲欧洲| 亚洲精品午夜国产va久久| 亚洲午夜电影在线观看| 亚洲午夜精品一区二区公牛电影院| 老汉色老汉首页a亚洲| 亚洲精品高清视频| 亚洲天堂一区二区| 97亚洲熟妇自偷自拍另类图片| 久久精品国产亚洲av成人| 精品久久久久久亚洲| 亚洲伊人久久精品影院| 亚洲热线99精品视频| 久久夜色精品国产嚕嚕亚洲av| 亚洲电影一区二区三区| 久久久久亚洲AV片无码下载蜜桃| 亚洲成人激情在线| 亚洲视频欧洲视频| ass亚洲**毛茸茸pics| 亚洲精品午夜国产va久久| 国产偷国产偷亚洲清高APP| 羞羞视频免费观看| 九九免费观看全部免费视频| 久久成人永久免费播放|