`
moogle
  • 浏览: 108987 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

XStream使用学习

    博客分类:
  • Java
阅读更多
java 代码
  1. import java.io.File;   
  2. import java.io.FileInputStream;   
  3. import java.io.FileOutputStream;   
  4. import java.io.InputStream;   
  5. import java.io.InputStreamReader;   
  6. import java.io.OutputStream;   
  7. import java.io.OutputStreamWriter;   
  8. import java.nio.charset.Charset;   
  9. import java.util.ArrayList;   
  10. import java.util.List;   
  11.   
  12. import com.thoughtworks.xstream.XStream;   
  13. import com.thoughtworks.xstream.converters.reflection.PureJavaReflectionProvider;   
  14.   
  15. public class test {   
  16.     public static void main(String[] args) {   
  17.         test.write();   
  18.         test.read();   
  19.     }   
  20.   
  21.     public static void write() {   
  22.         XStream sm = new XStream();   
  23.         mytest t = new mytest();   
  24.         t.setName("asd");   
  25.         t.setXb("男");   
  26.         try {   
  27.             OutputStream out = new FileOutputStream(new File("C:\\111.xml"));   
  28.             OutputStreamWriter writer = new OutputStreamWriter(out, Charset.forName("GBK"));   
  29.             writer.write("<!---->\n");   
  30.             //sm.omitField(mytest.class, "name");   
  31.                
  32.             sm.toXML(t, writer);   
  33.             out.close();   
  34.         } catch (Exception e) {   
  35.             e.printStackTrace();   
  36.         }   
  37.     }   
  38.   
  39.     public static void read() {   
  40.         XStream sm = new XStream(new PureJavaReflectionProvider());   
  41.         //XStream sm = new XStream();   
  42.         try {   
  43.             InputStream in = new FileInputStream(new File("C:\\111.xml"));   
  44.             InputStreamReader reader = new InputStreamReader(in, Charset.forName("GBK"));   
  45.             mytest t = (mytest) sm.fromXML(in);   
  46.             System.out.println(t.getXb());   
  47.             in.close();   
  48.         } catch (Exception e) {   
  49.             e.printStackTrace();   
  50.         }   
  51.     }   
  52. }   
  53.   
  54. class mytest {   
  55.   
  56.     private String name;   
  57.   
  58.     private String xb;   
  59.   
  60.     public String getName() {   
  61.         return name;   
  62.     }   
  63.   
  64.     public void setName(String name) {   
  65.         this.name = name;   
  66.     }   
  67.   
  68.     public String getXb() {   
  69.         return xb;   
  70.     }   
  71.   
  72.     public void setXb(String xb) {   
  73.         this.xb = xb;   
  74.     }   
  75. }   
  1.  XStream 的编码:
    本身并没有实现编码,必须依靠java.io.Writer来实现输出编码的转换。参考上例代码
  2. XStream 的常用方法
    xstream.omitField(mytest.class, "name");               定义某一个属性的值不进行xml序列化。
    xstream.alias("cat", Cat.class);
    xstream.aliasField("age", Cat.class, "mAge");        对某一个类和类的属性进行别名定义。
    xstream.useAttributeFor(String.class);                     对所有String类型的字段定义为属性tag显示
    xstream.useAttributeFor("name".String.class);       对所有String类型的字段名成为name 定义为属性tag显示


分享到:
评论

相关推荐

    xstream学习文档及实例

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

    xstream使用案例

    XStream 是一个 Java 库,它能够将 Java 对象序列化为 XML,同时也能将 XML 反序列化回对应的 Java 对象。这个功能在数据存储、网络...学习并理解 XStream 的用法,可以帮助你在 Java 开发中更加高效地处理 XML 数据。

    xStream使用demo

    使用xstream来读取xml文件的demo,该demo中,使用了支付宝对账单返回的xml为列子来展示使用xstream...学习xstream或者对xstream有疑问的可以参考下..之所以使用支付宝账单返回的xml是因为此xml着实复杂,值得写解析的demo

    xStream完整Jar包

    **XStream 概述** XStream 是一个 Java 库,用于将对象序列化为 XML,以及从 XML 反序列化回对象。它提供了一种简单而直观的...通过深入学习和实践,我们可以充分利用 XStream 的优点,提高代码的可读性和可维护性。

    xstream教程资料.rar

    本教程资料将带你深入理解和掌握XStream的核心功能和使用技巧。 一、XStream简介 XStream由Johannes Link创建,它通过简单的API提供了高效的序列化和反序列化功能。XStream的亮点在于其自动映射Java对象到XML的能力...

    XStream+1.3(xstream).CHM

    为了更好地理解和利用XStream,开发者应深入研究其API文档,学习如何配置转换器,处理嵌套的对象关系,以及如何处理XML的命名空间和属性。 总的来说,XStream 1.3是一个功能强大且易于使用的XML序列化库,它简化了...

    XStream简单应用实例(xml)

    它的基本用法包括创建一个XStream实例,然后使用`toXML()`方法将对象转换为XML字符串,以及使用`fromXML()`方法将XML字符串转换回相应的Java对象。这个过程使得数据持久化、网络传输或者跨系统交互变得更加便捷。 ...

    XStream 1.3 API 手册

    这个API手册是针对XStream 1.3版本的,包含了详细的使用指南和技术信息,旨在帮助开发者更深入地理解和应用这个强大的工具。 ### XStream 序列化和反序列化 1. **序列化**: XStream 可以将Java对象转换成XML字符串...

    使用xstream解析xml,xml与pojo的双向转化,完整的java 工程

    通过这个工程,开发者可以学习并实践XStream的使用,了解XML与Java对象之间的转化机制。同时,由于包含了测试类和所需jar包,可以直接运行和调试,这对于初学者或者需要快速实现XML处理功能的开发者来说,是一个非常...

    XStream.zip

    XStream是一个Java库,它能够将Java对象序列化为XML,并能从XML反序列化回Java对象。...在压缩包中的Java文件,很可能是为了演示这些概念而创建的实例,你可以通过查看和运行代码来进一步学习和实践XStream的功能。

    xstream-distribution-1.4.7-bin.zip

    - **xstream-1.4.7-sources.jar**: 源码文件,可以查看库的内部实现,有助于学习和调试。 - **README.txt** 或 **CHANGELOG**: 介绍库的使用方法、更新日志等信息。 通过以上内容,我们可以全面了解并有效地使用 ...

    xStream所有jar包、文档、源码

    在这个压缩包中,包含的是 XStream 的 jar 包、相关文档以及源码,这对于理解和使用 XStream 非常有帮助。 1. **XStream 库的基本概念**: - **序列化**:将 Java 对象转换为 XML 文本的过程,使得对象的状态可以...

    xStream学习xml,JASON,JAVA对象转换

    这篇博客文章,标题为“xStream学习xml,JASON,JAVA对象转换”,显然会探讨如何利用XStream来处理这两种数据格式。 XStream的核心功能在于其简单易用的API,可以将Java对象直接序列化成XML或JSON字符串,同时也能...

    利用XStream读写xml文件

    通过本篇内容的学习,我们了解了XStream的基本原理以及如何使用它来读写XML文件。XStream不仅简化了XML与Java对象之间的转换过程,还提高了开发效率。在实际项目中,合理利用XStream可以有效地管理复杂的数据结构。

    XStream4JavaDemo演示源码

    总结来说,"XStream4JavaDemo演示源码"是学习和理解XStream库的一个宝贵资源。通过这个示例,我们可以了解到XStream如何简化Java对象与XML之间的转换,以及如何自定义转换规则以满足特定需求。无论是进行数据持久化...

    xstream-1.3.1.jar

    在标题中提到的“xstream-1.3.1.jar”是XStream的1.3.1版本的Java归档文件(JAR),包含了XStream的所有类和资源,使得开发者能够在他们的项目中直接引用和使用。 在Java开发中,XML作为一种广泛使用的数据交换格式...

    Xstream.Core 源代码 C#

    《Xstream.Core 源代码解析与C#应用深度探讨》 Xstream.Core是一个专注于数据序列化和反序列化的开源库,它在C#编程...通过对源代码的学习和实践,开发者可以更好地定制和优化Xstream.Core,以满足特定项目的需求。

    xstream源码

    XStream是一个Java库,它能够将Java对象转换为...通过学习源码,开发者可以更好地理解和定制XStream的行为,以适应各种复杂的项目需求。无论是对XML的处理,还是对Java对象的映射,XStream都展示了其强大而灵活的设计。

    xstream资料

    在Java项目中使用XStream,首先需要将其JAR文件添加到项目的类路径中。XStream通常提供两个JAR文件:一个包含了核心库,另一个包含了对于各种XML解析器(如DOM或StAX)的依赖。"jar与src"标签可能指的是这两个文件,...

    xstream-distribution-1.3.1-src.zip

    - **缓存策略**:为了提高性能,XStream 使用缓存机制存储已处理的类信息,避免重复反射操作。 通过深入研究 XStream 1.3.1 的源码,开发者可以了解其实现细节,例如类的序列化逻辑、转换器的注册和调用流程,以及...

Global site tag (gtag.js) - Google Analytics