EasyJF 官方网站全面升级,同时EasyJF开源团队也将进行全面改组,期待您给我们提出宝贵的意见及建议!

当前位置:首页-技术前沿-其它开源框架

  • XStream无废话上手指南【翻译】
    作者: stef_wu  来源:easyjf  发布时间:2007-11-15 09:46:00
  • 本指南来自XStream-two-minute-tutorial。本指南旨在简单给出使用XStream转换对象到XML或者将XML转换成对象。
    1,创建一个需要序列化的对象
    下面是一个简单的类,将使用XStream把该类转换成XML再转转换成对象。

    public class Person { 
      private String firstname; 
      private String lastname; 
      private PhoneNumber phone; 
      private PhoneNumber fax; 
      // ... constructors and methods 
    } 
     
    public class PhoneNumber { 
      private int code; 
      private String number; 
      // ... constructors and methods 
    }


    注意这些类都是private的。XStream不在意属性的有效范围,Accessors和构造方法也不是必须的。

    2,初始化XStream
    首先得到XStream类的实例:
    XStream xstream=new XStream();
    在默认的构造方法下,你需要xstream-[version].jar和xpp3-[version].jar两个包。如果你不需要xpp3,你可以使用标准的JAXP DOM来解析XML,则需要:
    XStream xstream=new XStream(new DomDriver());

    为了使输出的XML更具有可读性,我们可以为XML输出对象增加别名:
    xstream.alias("person", Person.class);
    xstream.alias("phonenumber", PhoneNumber.class);
    注意,别名只是为了让XML文件更具可读性,不是必须的。

    3,序列化对象到XML
    下面创建一个Person实体:

    Person joe = new Person("Joe", "Walnes"); 
    joe.setPhone(new PhoneNumber(123, "1234-456")); 
    joe.setFax(new PhoneNumber(123, "9999-999"));

    并将它序列化到XML:

    String xml = xstream.toXML(joe);
    输出的XML会是:

    <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>

    OK,就这么简单。

    4,将XML转换成对象:
    将生成的XML文件转换成对象只需要:

    Person newJoe = (Person)xstream.fromXML(xml);

    That's all。

  • 评论 】 【收藏】 【 推荐给朋友 】 【字体: 】 【关闭
评论:共0条

发表评论:
评论: 
    

相关栏目

  • 如何才能得到国外最新的技术
Copyright (C) 2005 EasyJF.com 简易java框架网 渝ICP备06004507号
如有意见请与我们联系