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

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

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

    9910

    單飛

       :: 首頁 :: 聯系 :: 聚合  :: 管理
    我嘗試著用它來保存繼承了Externalizeable的java類,可是沒有成功。
    import java.io.Externalizable;
    import java.io.IOException;
    import java.io.ObjectInput;
    import java.io.ObjectOutput;

    public class Person implements Externalizable{
    ?? ?private String name ;
    ?? ?private int sex;
    ?? ?private Person son;
    ?? ?
    ?? ?
    ?? ?public String getName() {
    ?? ??? ?return name;
    ?? ?}
    ?? ?public void setName(String name) {
    ?? ??? ?this.name = name;
    ?? ?}
    ?? ?public int getSex() {
    ?? ??? ?return sex;
    ?? ?}
    ?? ?public void setSex(int sex) {
    ?? ??? ?this.sex = sex;
    ?? ?}
    ?? ?public Person getSon() {
    ?? ??? ?return son;
    ?? ?}
    ?? ?public void setSon(Person son) {
    ?? ??? ?this.son = son;
    ?? ?}
    ?? ?public void writeExternal(ObjectOutput out) throws IOException{
    ?? ??? ?out.writeObject(name);
    ?? ??? ?out.writeInt(sex);
    ?? ??? ?out.writeObject(son);
    ?? ??? ?
    ?? ??? ?
    ?? ?}
    ?? ?public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException{
    ?? ??? ?name = (String)in.readObject();
    ?? ??? ?sex = in.readInt();
    ?? ??? ?son = (Person)in.readObject();
    ?? ?}
    }


    import java.io.File;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.ObjectInputStream;
    import java.io.ObjectOutputStream;
    import java.io.Reader;
    import java.io.Writer;

    import com.thoughtworks.xstream.XStream;
    import com.thoughtworks.xstream.io.xml.DomDriver;

    public class TestXml {
    ??? public static void main(String[] args) {
    ??? ??? try {
    ??? ??? ??? XStream xstream = new XStream(new DomDriver());
    ??? ??? ??? File file = new File("c:/ssx.xml");
    ??? ??? ??? Writer writer = new FileWriter(file);
    ??? ??? ??? ObjectOutputStream out = xstream.createObjectOutputStream(writer);
    ??? ??? ??? Person father = new Person();
    ??? ??? ??? father.setName("father");
    ??? ??? ??? father.setSex(1);
    ??? ??? ??? Person son = new Person();
    ??? ??? ??? son.setName("son");
    ??? ??? ??? father.setSon(son);
    ??? ??? ??? //----------------write----------
    ??? ??? ??? xstream.alias("Person", Person.class);
    ??? ??? ??? out.writeObject(father);
    ??? ??? ??? out.close();
    ??? ??? ??? //-----------------read--------------
    ??? ??? ??? Reader reader = new FileReader(file);
    ??? ??? ??? ObjectInputStream in = xstream.createObjectInputStream(reader);
    ??? ??? ??? Person sfather = (Person)in.readObject();
    ??? ??? ??? System.out.println(sfather.getName());
    ??? ??? ???
    ??? ??? } catch (Exception e) {
    ??? ??? ??? e.printStackTrace();
    ??? ??? }

    ??? }
    }
    可是XStream提供了Converter這個類
    import com.thoughtworks.xstream.converters.Converter;
    import com.thoughtworks.xstream.converters.MarshallingContext;
    import com.thoughtworks.xstream.converters.UnmarshallingContext;
    import com.thoughtworks.xstream.io.HierarchicalStreamReader;
    import com.thoughtworks.xstream.io.HierarchicalStreamWriter;

    public class PersonConverter implements Converter {

    public boolean canConvert(Class clazz) {
    return false;
    }

    public void marshal(Object value, HierarchicalStreamWriter writer,
    MarshallingContext context) {
    }

    public Object unmarshal(HierarchicalStreamReader reader,
    UnmarshallingContext context) {
    return null;
    }
    這樣就可以來自己建立Converter如:date..等類型。
    然后注冊一下:
    xStream.registerConverter(new PersonConverter());

    通過對比發現XStream要比betwixt更易于使用,betwixt需要更多的設置才能運行,并且有大量隱藏的要求。
    http://xstream.codehaus.org 有很詳細的文檔介紹。
    posted on 2006-11-26 15:27 單飛 閱讀(799) 評論(0)  編輯  收藏 所屬分類: java
    主站蜘蛛池模板: 亚洲精品国产精品国自产网站| 久久久精品国产亚洲成人满18免费网站| 亚洲色图在线播放| 99爱视频99爱在线观看免费| 久久精品亚洲精品国产色婷| 亚欧日韩毛片在线看免费网站| 亚洲最大的成网4438| 67pao强力打造国产免费| 亚洲成人一级电影| 拨牐拨牐x8免费| 香蕉视频亚洲一级| 亚洲不卡无码av中文字幕| 一级毛片**免费看试看20分钟| 久久影院亚洲一区| 久久精品免费观看国产| 亚洲熟妇色自偷自拍另类| 97碰公开在线观看免费视频| 亚洲国产日韩精品| 亚洲国产精品毛片av不卡在线| 成人精品综合免费视频| 亚洲人成色77777| 67194国产精品免费观看| 中文字幕乱码亚洲精品一区| 国产91在线免费| 国内精品99亚洲免费高清| 亚洲沟沟美女亚洲沟沟| 免费中文熟妇在线影片| 成人在线免费视频| 亚洲免费在线视频| 热99re久久免费视精品频软件| 无码的免费不卡毛片视频| 亚洲精品国产成人专区| 在线视频免费国产成人| a级毛片在线视频免费观看| 亚洲av日韩av无码av| 国产99视频免费精品是看6| 无码一区二区三区免费| 亚洲精品人成网线在线播放va| 在线观看亚洲成人| 97无码免费人妻超级碰碰夜夜| 国产免费人成视频在线播放播|