`
lupingzhang
  • 浏览: 36468 次
  • 性别: Icon_minigender_2
  • 来自: 云南
社区版块
存档分类
最新评论

XStream 使用示例

    博客分类:
  • java
阅读更多
XStream是一个开源项目,利用它可以方便的进行java对象和xml之间进行转换,从而在测试,服务器设置等方面有很好的应用。

先建两个java对象

1.Adress类
package xml_chb;

public class Adress ...{
    private String provice;
    private String city;
    public String getCity() ...{
        return city;
    }
    public void setCity(String city) ...{
        this.city = city;
    }
    public String getProvice() ...{
        return provice;
    }
    public void setProvice(String provice) ...{
        this.provice = provice;
    }
}

2.Person类
package xml_chb;

public class Person ...{

    private String name="";
    private String sex="";
    private int age;
    private String mobile;
    private Adress adress;
   
    public int getAge() ...{
        return age;
    }

    public void setAge(int age) ...{
        this.age = age;
    }

    public String getMobile() ...{
        return mobile;
    }

    public void setMobile(String mobile) ...{
        this.mobile = mobile;
    }

    public String getName() ...{
        return name;
    }

    public void setName(String name) ...{
        this.name = name;
    }

    public String getSex() ...{
        return sex;
    }

    public void setSex(String sex) ...{
        this.sex = sex;
    }

    public Adress getAdress() ...{
        return adress;
    }

    public void setAdress(Adress adress) ...{
        this.adress = adress;
    }

}

3.生成一个Person对象,并将其转化为xml

//生成一个java对象
  Person person=new Person();
  person.setName("chb");
  person.setAge(22);
  person.setSex("boy");
 
  //生成一个Adress对象
  Adress adr=new Adress();
  adr.setProvice("Beijing");
  adr.setCity("Beijing");
  person.setAdress(adr);
 
  //将java对象转化为xml
  XStream xstream=new XStream(new DomDriver());
  String strxml=xstream.toXML(person);
  System.out.println(strxml);

输出:
<xml__chb.Person>
  <name>chb</name>
  <sex>boy</sex>
  <age>22</age>
  <adress>
    <provice>Beijing</provice>
    <city>Beijing</city>
  </adress>
</xml__chb.Person>

我们可以看到,xml根结点是<xml_chb.Person>是类的全名,这样看起来很繁琐,我们可以使用别名来改进这一现象:

  xstream.alias("person",Person.class);
  strxml=xstream.toXML(person);
  System.out.println(strxml);

输出结果为:
<person>
  <name>chb</name>
  <sex>boy</sex>
  <age>22</age>
  <adress>
    <provice>Beijing</provice>
    <city>Beijing</city>
  </adress>
</person>

4.从xml转化为POJO

String str="<person><name>emily</name><sex>girl</sex><age>22</age><adress><provice>Beijing</provice><city>Beijing</city></adress></person>";
  Person person1=(Person)xstream.fromXML(str);
  System.out.println("姓名:"+person1.getName());
  System.out.println("性别:"+person1.getSex());

输出结果为:

姓名:emily
性别:girl

5.修改元素值

Adress adr1=new Adress();
  adr1.setProvice("Shanghai");
  adr1.setCity("Shanghai");
  person.setAdress(adr1);
  strxml=xstream.toXML(person);
  System.out.println(strxml);

输出结果:
<person>
  <name>chb</name>
  <sex>boy</sex>
  <age>22</age>
  <adress>
    <provice>Shanghai</provice>
    <city>Shanghai</city>
  </adress>
</person>

XStream的jar包可以直接到http://xstream.codehaus.org/下载,那里有一些简单例子

XStream是个很小的开源项目,所以它能实现的功能也就很有限,它只能包装简单类型的元素进行转换,复杂类型的,比如Calendar,Date等类型则需要用户自己实现Converter。

还有,XStream对xml的操作并不好,比如想把一个子节点变成属性就是一个很复杂的工作,但是大家平时用于测试的话,看看对象中到底存着什么数据,还是必要的。
分享到:
评论

相关推荐

    XStream使用例子

    在本文中,我们将深入探讨XStream的使用方法,包括它的核心概念、配置、安全性和性能优化。 **1. 序列化到XML** XStream的核心功能是能够将Java对象转换成XML。首先,我们需要导入XStream库,并创建一个XStream...

    Xstream使用说明

    Xstream的使用非常简单直观,下面通过一个简单的示例来展示如何使用Xstream进行序列化和反序列化。 ##### 2.1 JavaBean定义 首先定义一个简单的`Person`类作为JavaBean: ```java class Person { // JavaBean实体...

    XStream使用文档 wd.docx

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

    xstream和betwixt对xml、object的互转

    **XStream使用示例** ```java import com.thoughtworks.xstream.XStream; public class XStreamExample { public static void main(String[] args) { XStream xstream = new XStream(); Person person = new ...

    xstream使用案例

    在提供的压缩包文件中,可能包含了使用 XStream 进行序列化和反序列化的示例代码,你可以通过运行这些代码更深入地了解其工作原理和使用方式。学习并理解 XStream 的用法,可以帮助你在 Java 开发中更加高效地处理 ...

    XStream小例子

    这个小例子将帮助我们理解XStream的工作原理及其基本用法。 首先,我们需要了解XStream的核心概念:对象到XML的映射。在XStream中,这个过程通过创建一个`XStream`实例并调用其`toXML()`方法来实现。同样,从XML反...

    XStream示例(含jar包)

    这个示例可能包含了一个或多个演示如何使用 XStream 进行对象和 XML/JSON 之间转换的 Java 应用程序。这些示例可能包括创建对象、序列化为 XML/JSON、然后反序列化回对象的完整流程。通过运行提供的 jar 包,你可以...

    XStream解析XML实例

    **XStream解析XML实例** 在Java开发中,处理XML数据是一项常见的任务,XStream库提供了一个简单而...通过理解上述概念和示例,开发者可以有效地利用XStream来处理XML数据,无论是在常规Java项目还是Android应用中。

    XStream示例(包含完整jar包)

    XStream示例代码,JavaBean与XML,JSON之间互相转换(包含完整jar包)jettison-1.3.3.jar、xmlpull-1.1.3.1.jar、xstream-1.4.7.jar

    java 利用Xstream注解生成和解析xml

    Xstream通过使用注解提供了高度的灵活性,使得XML的生成和解析更加简单和直观。在这篇文章中,我们将深入探讨如何利用Xstream的注解来处理XML。 首先,要使用Xstream,我们需要在项目中引入其依赖。如果你使用的是...

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

    此示例创建了一个`Person`对象,然后使用`XStream`将其转换为XML字符串,最后从XML字符串反序列化回`Person`对象。通过别名配置,XML元素的名称与Java类和字段名对应,使得XML结构更加清晰。 总之,`XStream`是Java...

    Oracle Database XStream Guide 11g Release 2 (11.2)-302

    Oracle Database XStream Guide 11g Release 2 (11.2)-302 Oracle Database XStream 是 Oracle 公司推出的一个数据捕获和事件处理工具,旨在帮助用户实时捕获和处理数据库中的数据变化。下面是 Oracle Database ...

    xStream完整Jar包

    这个“xStream完整Jar包”很可能包含了 XStream 库的所有组件,包括核心库、相关的依赖和可能的示例代码,以确保用户在使用过程中不会遇到因缺少依赖而导致的错误。 **XML 序列化与反序列化** XStream 的主要功能...

    xstream入门例子

    本入门例子将带你了解如何使用 XStream 进行基本操作。 首先,XStream 的核心功能在于它可以将 Java 对象转换成 XML,同时也可以将 XML 文档解析回相应的 Java 对象。这种转换过程称为序列化和反序列化。在描述中...

    使用XStream序列化/反序列化对象

    在这个场景中,我们将深入探讨如何使用XStream处理对象的序列化和反序列化。 首先,让我们了解什么是XStream。XStream是由Joe Walnes创建的一个开源项目,它提供了一种简单的方式来将Java对象转换为XML,反之亦然。...

    XStream解析各种数据格式

    #### 三、基本使用示例 1. **创建XStream实例** 创建 XStream 实例是使用 XStream 的第一步。可以通过指定不同的驱动器来初始化 XStream 对象,例如使用 DOM 驱动器: ```java XStream xstream = new XStream...

    android 使用Java库xstream示例

    android 使用Java库xstream示例。这是Java解析xml文件的库,基于Java7基础上的。那么在android上也是一样适用的。我的博客:http://blog.csdn.net/qq_16064871

    XStream使用方法总结-对象-转换.txt

    ### XStream使用方法总结——对象转换 XStream是一款强大的Java库,主要用于实现Java对象与XML文档之间的相互转换。本文将详细介绍XStream的基本用法、配置选项以及如何利用它来进行对象到XML的序列化和反序列化...

    xstream学习文档及实例

    XStream 是一个强大的 Java 库,它允许程序员将 Java 对象序列化为 XML,反之...在阅读“xstream学习文档”时,建议重点理解其核心概念、使用示例以及自定义转换器的编写,以便在实际工作中游刃有余地应对各种需求。

    XStream解析xml demo

    本篇文章将深入探讨XStream解析XML的示例,帮助你理解和掌握这一强大的工具。 首先,我们需要理解XStream的基本用法。XStream的核心概念是通过为Java对象定义一个映射,使得对象的字段与XML元素一一对应。这可以...

Global site tag (gtag.js) - Google Analytics