<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的操作類庫(kù),codehaus的xstream,很簡(jiǎn)單的在xml/json和java對(duì)象間轉(zhuǎn)換。

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

    另外,通過alias可實(shí)現(xiàn)xml屬性的支持。更多功能,請(qǐng)參閱 Tutorial

    2、XML轉(zhuǎn)換代碼片段:
    Class 轉(zhuǎn)換為 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轉(zhuǎn)換為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 閱讀(948) 評(píng)論(0)  編輯  收藏 所屬分類: java 開發(fā)
    <2008年1月>
    303112345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    常用鏈接

    留言簿(3)

    隨筆分類

    隨筆檔案

    收藏夾

    搜索

    •  

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 免费无码又爽又刺激网站| 亚洲一区二区三区影院| 亚洲国产美国国产综合一区二区| 国产精品亚洲色婷婷99久久精品| 亚洲宅男精品一区在线观看| 亚洲阿v天堂在线| 一区二区三区AV高清免费波多| 69堂人成无码免费视频果冻传媒| 亚洲精品视频在线观看免费| 亚洲精选在线观看| 99久久久国产精品免费牛牛| 亚洲国产精品日韩专区AV| 亚洲国产高清视频| 久久99国产乱子伦精品免费| 亚洲一区二区三区高清视频| 一级特黄a免费大片| 国产亚洲AV手机在线观看 | 久久99国产综合精品免费| 亚洲最大福利视频网站| 日本免费网站视频www区| 亚洲成A∨人片天堂网无码| 日韩精品无码永久免费网站| 一本久久a久久精品亚洲| 99免费在线观看视频| 伊人久久五月丁香综合中文亚洲 | 亚洲乱码中文字幕久久孕妇黑人 | 亚欧在线精品免费观看一区| 亚洲AV成人影视在线观看| 99视频在线免费观看| 久久亚洲熟女cc98cm| 四虎永久在线精品免费网址| 亚洲天天在线日亚洲洲精| 一二三四视频在线观看中文版免费| 亚洲国产欧美一区二区三区| 国色精品卡一卡2卡3卡4卡免费| 亚洲欧美成人综合久久久 | 日本一道一区二区免费看| 一级特级aaaa毛片免费观看| 亚洲黄色免费在线观看| 国产成人免费ā片在线观看| 色www永久免费网站|