日期:2014-05-16 浏览次数:20388 次
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
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
|
public
class
Customer {
????
private
int
custId;
????
private
String custName;
????
private
List<Order> orders;
????
//setter/getter 和构造方法略
}
?
public
class
Order {
????
private
int
orderId;
????
private
String orderName;
????
private
Product[] products;
????
//setter/getter 和构造方法略
}
?
免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
|