WEB开发网
开发学院软件开发Java 使用 XStream 在 JavaBean 与 XML/JSON 之间相互转... 阅读

使用 XStream 在 JavaBean 与 XML/JSON 之间相互转换

 2009-09-23 00:00:00 来源:WEB开发网   
核心提示:XML 和 JSON 是当今常用的两种数据描述与传输的格式,特别是涉及到 JS 时使用 JSON 颇为频繁,使用 XStream 在 JavaBean 与 XML/JSON 之间相互转换,自然,在 Java 的世界里少不了完成 JavaBean 与这两种格式相互转换的组件,简单说明 XStream 的使用吧,分为 Ja

XML 和 JSON 是当今常用的两种数据描述与传输的格式,特别是涉及到 JS 时使用 JSON 颇为频繁。自然,在 Java  的世界里少不了完成 JavaBean 与这两种格式相互转换的组件,那就是 XStream 和 JSON-lib。这里我简单记下 XStream  的用法。

其实相类似的工具早已有之。如果用过 DWR 的同志,一定有印像,DWR 进行远程方法调用时也能为你完成 JavaBean 和 JSON 格式的双向转换的,所依赖的是它的各种 Converter。再要是对 Struts1 的细节有所注意的话,Struts1 的 ActionServlet 在初始化 struts-config.xml 时是通过 commons-digester 来完成 XML 到 JavaBean 转换的。相应的 Apache 也有一个 commons-betwixt 实现了 JavaBean 到 XML 的生成。

而我这里要说的 XStream(http://xstream.codehaus.org) 把 JavaBean 与 XML/JSON 间的双向转换统统实现了,而 JSON-lib 则如其名,功能太显简陋了。要使用 XStream,需下载到 xstream包,当前版本是 1.3.1。然后把 xstream-1.x.x.jar 添加到项目的 Classpath 上,可不依赖于其他包。在某些有要求时候才需要用到 lib 目录中的其他包,下面会提到。

简单说明 XStream 的使用吧,分为 JavaBean -> XML、JavaBean -> JSON、 XML -> JavaBean、JSON -> JavaBean 几部分内容。在开始例子之前,先定义三个类(都在 com.unmi.model 包中):

01.public class Customer {
02.    private int custId;
03.    private String custName;
04.    private List<Order> orders;
05.    //setter/getter 和构造方法略
06.}
07. 
08.public class Order {
09.    private int orderId;
10.    private String orderName;
11.    private Product[] products;
12.    //setter/getter 和构造方法略
13.}
14. 
15.public class Product {
16.    private int prodId;
17.    private String prodName;
18.    private double prodPrice;
19.    //setter/getter 和构造方法略
20.}

1 2 3 4 5 6  下一页

Tags:使用 XStream JavaBean

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接