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

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

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

    如鵬網(wǎng) 大學生計算機學習社區(qū)

    CowNew開源團隊

    http://www.cownew.com 郵件請聯(lián)系 about521 at 163.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      363 隨筆 :: 2 文章 :: 808 評論 :: 0 Trackbacks
    對象圖
    XStream支持對象圖,也就是“反序列化”一個對象的時候?qū)3衷瓉淼膶ο笠藐P(guān)系,這其中包括循環(huán)引用關(guān)系。?我們可以指定XStream是使用XPath還是IDs來實現(xiàn)對象引用的這種處理方式,指定的方式就是調(diào)用XStream的setMode方法,此方法有XStream.XPATH_REFERENCES、XStream.ID_REFERENCES、XStream.NO_REFERENCES三個選項。其意義分別如下:
    XStream.XPATH_REFERENCES:這是默認值。這個選項指定XStream使用XPath引用方式處理重復(fù)引用。
    XStream.ID_REFERENCES:這個選項指定XStream使用ID引用方式處理重復(fù)引用。當使用手寫XML的時候,這種方式可能更好用一些。?
    XStream.NO_REFERENCES:這個選項指定XStream不支持圖引用,將對象結(jié)構(gòu)當做樹狀處理。重復(fù)的引用將會被認為是兩個獨立的對象,而循環(huán)引用將會導(dǎo)致一個異常。這種方式速度會更快一些,并且相對于前兩者來說占用更少的內(nèi)存。
    自定義轉(zhuǎn)換器
    XStream對String, Date, int, boolean等基本類型以及Map, List, Set, Properties等集合類型提供了轉(zhuǎn)換器,因此這些類型可以輕松的實現(xiàn)序列化和反序列化。如果您使用的數(shù)據(jù)類型不被XStream支持,那么就需要自定義數(shù)據(jù)轉(zhuǎn)換器。自定義轉(zhuǎn)換器要實現(xiàn)com.thoughtworks.xstream.converters.Converter接口,這個接口定義了如下三個方法:
    boolean canConvert(Class type);
    void marshal(Object source, HierarchicalStreamWriter writer, MarshallingContext context);
    Object unmarshal(HierarchicalStreamReader reader, UnmarshallingContext context);
    這三個方法分別表示:type這個類型的數(shù)據(jù)此轉(zhuǎn)換器是否有能力轉(zhuǎn)換;將對象進行編組(marshal)為XML格式;將XML格式反編組(unmarshal)為對象。
    我們通常無需直接實現(xiàn)該接口,而是繼承com.thoughtworks.xstream.converters.MarshallingContext.AbstractBasicConverter抽象類,然后覆蓋:
    protected String toString(Object obj)
    protected Object fromString(String str);
    兩個方法即可。可以參考com.thoughtworks.xstream.converters.extended.SqlTimestampConverter的實現(xiàn)代碼。
    轉(zhuǎn)換器開發(fā)完畢以后調(diào)用XStream類的public void registerConverter(Converter converter)方法注冊轉(zhuǎn)換器。
    posted on 2007-02-13 09:38 CowNew開源團隊 閱讀(820) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 精品日韩99亚洲的在线发布| 亚洲高清专区日韩精品| 国产亚洲国产bv网站在线| 四虎影视成人永久免费观看视频| 亚洲午夜久久久影院伊人| jizz免费在线观看| 亚洲线精品一区二区三区| 韩日电影在线播放免费版| 日韩亚洲人成在线综合日本| 两个人看的www免费视频中文| 国产亚洲精品xxx| 99re免费99re在线视频手机版| 亚洲黄色免费在线观看| 全免费毛片在线播放| 亚洲欧美一区二区三区日产| 热久久精品免费视频| 一级特级aaaa毛片免费观看| 亚洲性猛交XXXX| 99热这里有免费国产精品| 国产精品亚洲精品| 免费在线精品视频| 最新久久免费视频| 激情亚洲一区国产精品| 国产v片免费播放| 中文字幕久无码免费久久| 日木av无码专区亚洲av毛片| 男女免费观看在线爽爽爽视频| 色综合久久精品亚洲国产| 丁香五月亚洲综合深深爱| 黄在线观看www免费看| 最新亚洲人成无码网站| 亚洲成色WWW久久网站| 日本亚洲免费无线码| 一级视频免费观看| 亚洲综合免费视频| 国产自产拍精品视频免费看| 免费国产成人午夜在线观看| 亚洲午夜无码久久久久小说| 国产亚洲精品无码专区| 西西大胆无码视频免费| 中文字幕成人免费高清在线 |