`
jetway
  • 浏览: 483954 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

XStream简单应用实例

    博客分类:
  • java
阅读更多

 

 
XStream简单应用实例
 
 

首先到http://xstream.codehaus.org下载XStream的最新版本,到目前为止的最新版本为<chsdate isrocdate="False" islunardate="False" day="30" month="12" year="1899" w:st="on"></chsdate>1.1.2,主要改变为提供了一些JDK1.5enum类型支持。下载后,解压,将xstream-1.1.2.jarxpp3_min-1.1.3.4.I.jar复制到项目的lib中,此时就可以使用XStream了。Xpp3XStream提供的一个很有效率的XML pull-parser实现,推荐使用,可以提高解析的效率。

 

一、首先,创建要转换的Java类:

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

}

注意:这里定义的属性都为privateXStream不限制你的属性的可见性,默认所有属性都会进行转换;XStream不要求你必须要有settergetter方法,也不要求你要有一个默认的类构造方法。

 

二、初始化XStream

使用以下的语句进行初始化:

XStream xstream = new XStream();

默认采用Xpp3库,如果你不想使用Xpp3这个库,你也可以使用一个标准的JAXP DOM解析器,可以采用以下语句进行初始化:

XStream xstream = new XStream(new DOMDriver());  //不需要Xpp3

xstream实例,为线程安全的,可以供多个线程进行调用,共享使用。

 

三、注册要转换的类的别名

初始化XStream后,我们要将要转换的类注册到xstream中,告诉XStream,有哪些类要进行XML转换,注册采用以下的语句:

xstream.alias(“person”, Person.class);

xstream.alias(“phonenumber”, PhoneNumber.class);

当然,这一步不是必须的,如果不进行注册的话,XStream默认会在转换时,将对应类全限定名也加入XML文件中,如com.test.Person,这如果在数据量大的时候,会使生成的XML文件增大不少。

 

四、将对象序列化为XML

到这一步,我们就可以将一个Java对象序列化为一个XML文件了,我们先声明一个Person对象,然后加入两条电话号码对象:

Person person = new Person("Chen", "Tao");

joe.setPhone(new PhoneNumber(123, "1234-456");

joe.setFax(new PhoneNumber(123, "9999-999");

接下来,我们将此Person对象转换为XML字符串:

String xml = xstream.toXML(person);

生成的XML字符串为:

<person></person>

<<person>

  <firstname>Chen</firstname>

  <lastname>Tao</lastname>

  <phone>

    <code>123</code>

    <number>1234-456</number>

  </phone>

  <fax>

    <code>123</code>

    <number>9999-999</number>

  </fax>

</person>>

 

就这么简单,什么映射文件都不用写,默认XStream已经帮我们做好了。

 

五、从XML反序列化出对象

而从一个XML文件中反序列出一个对象也同样非常简单,我们看一下下面的代码:

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

 

 

 

 

 

 

 

 

 

 

 

 

 
 

 

发表于: 2006-11-15,修改于: 2006-11-15 11:44,已浏览290次,有评论0条 推荐 投诉
 
 


分享到:
评论

相关推荐

    XStream简单应用实例(xml)

    综上所述,"XStream简单应用实例(xml)"涉及了如何使用XStream库进行Java对象到XML的序列化和反序列化操作,这是Java开发中一种实用的数据处理技巧,尤其适用于需要XML格式数据交换的场景。通过学习和实践,开发者...

    xstream使用案例

    2. **初始化 XStream**: 创建 `XStream` 实例,通常建议使用 `XStream(xmlDriver)` 初始化,其中 `xmlDriver` 可以是 `JDOMDriver` 或 `DomDriver` 等。 3. **注册转换器**: 如果需要处理自定义类型,可能需要注册...

    XStream解析XML实例

    这个实例将深入探讨如何使用XStream进行XML操作。 **1. XStream简介** XStream是一个开源库,由Joe Walnes创建,它提供了Java对象到XML和XML到Java对象的直接映射。它的主要优点是其简洁的API和易于理解的输出。...

    xstream学习文档及实例

    在本学习文档中,我们将深入探讨 XStream 的核心概念、用法以及如何在实际项目中应用。 一、XStream 简介 XStream 能够将复杂的 Java 对象结构转换成易于读写的 XML 格式,同时也能将 XML 文档还原为对应的 Java ...

    Xstream实例

    【Xstream实例】是关于如何使用Xstream库处理XML数据并进行文件操作的实践示例。Xstream是一个轻量级的Java库,它允许你将Java对象序列化为XML,反之亦然,使得XML数据的读写变得极其简单。在这个实例中,我们将探讨...

    XStream使用文档 wd.docx

    以下是一个简单的示例,展示了如何创建 `XStream` 实例并使用它来将 `Person` 对象转换为 XML: ```java import com.thoughtworks.xstream.XStream; public class Main { public static void main(String[] args)...

    使用XStream操作xml教程

    首先创建一个Java对象,然后使用XStream实例的`toXML()`方法将其转换为XML字符串。 ```java import com.thoughtworks.xstream.XStream; public class User { private String name; private int age; // 构造器...

    xml解析及使用XStream实现javaBean与xml之间的转换

    本篇将详细讲解XML的解析方式及其在Java中的应用,特别是如何使用XStream库进行JavaBean与XML之间的互转。 1. **XML解析方式** - DOM解析:Document Object Model,它一次性加载整个XML文档到内存,形成一棵树形...

    xStream完整Jar包

    2. 创建 XStream 实例:`XStream xstream = new XStream();` 3. 配置 XStream:根据需求设置命名策略、类型转换器等。 4. 序列化对象:`String xml = xstream.toXML(yourObject);` 5. 反序列化 XML:`YourObject ...

    xstream教程资料.rar

    《XStream深度解析与实战应用》 XStream是一款强大的Java库,它能够将Java对象序列化为XML,反之亦然,极大地简化了Java对象与XML数据之间的转换过程。本教程资料将带你深入理解和掌握XStream的核心功能和使用技巧...

    XStream Java下的使用

    XStream的核心类是`XStream`,你可以通过创建其实例并调用`fromXML()`和`toXML()`方法来实现XML与Java对象之间的转换。例如,如果你有一个简单的Java对象`Person`: ```java class Person { String name; int ...

    XStream使用方法总结附实例代码

    以下是一个简单的示例,展示了`XStream`的使用: ```java import com.thoughtworks.xstream.XStream; import java.util.ArrayList; import java.util.List; public class Person { private String name; private...

    xstream使用小记

    在本文中,我们将深入探讨Xstream的核心概念、使用场景以及如何通过实例进行操作。 首先,Xstream的核心优势在于其易用性。它通过简单的API使XML与Java对象之间的映射变得直观。通过使用`XStream`类的`toXML()`和`...

    XStream解析各种数据格式

    创建 XStream 实例是使用 XStream 的第一步。可以通过指定不同的驱动器来初始化 XStream 对象,例如使用 DOM 驱动器: ```java XStream xstream = new XStream(new DomDriver()); ``` 2. **序列化Java对象为...

    Java用xStream拼接xml

    Java中的xStream库提供了一个简单易用的方式来将Java对象序列化为XML,反之亦然,即反序列化XML回Java对象。 **xStream简介** xStream是一个开源的Java库,由Johannes Link创建。它提供了简洁、直观的API来处理XML...

    XStream解析xml 转换成对象案例

    本篇文章将深入探讨如何使用XStream进行XML到对象的转换,并提供一个实际的案例。 首先,理解XStream的基本工作原理是至关重要的。XStream通过映射XML节点到Java类的字段来实现对象的序列化和反序列化。这意味着你...

    xstream相关的jar包

    例如,你可以通过简单的几行代码将一个对象实例转换为XML,并在稍后恢复原始对象。 ```java XStream xstream = new XStream(); String xml = xstream.toXML(yourObject); YourObject restoredObject = (YourObject)...

Global site tag (gtag.js) - Google Analytics