XStream学习笔记一

xiaoxiao2023-11-21  14

XStream是一个实现java对象和xml相互转化的开源组件,官方的地址是http://xstream.codehaus.org

下面创建一个简单的例子。

1 Create classes to be serialized

package org.utmost.util.xml; public class User { private String name; private String pwd; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPwd() { return pwd; } public void setPwd(String pwd) { this.pwd = pwd; } }

 2 Initializing Java Object

List list=new ArrayList(); User user=new User(); user.setName("张三"); user.setPwd("123"); list.add(user); user=new User(); user.setName("李四"); user.setPwd("456"); list.add(user);

 

 3 Initializing  XStream

XStream stream=new XStream();

 

以上方式实例化stream是需要xpp3-[version].jar包的,如果不想用xpp3则需要用标准的JAXP DOM解析器

XStream stream=new XStream(new DomDriver());

 4 给list和user类起个别名,如果不起别名则是类的完整的名字(包名+类名) 

stream.alias("users", List.class); stream.alias("user", User.class);

 备注:有的时候生成的xml中需要给字段起个别名。例如:把name属性转化为大写字母:

stream.aliasField("NAME", User.class, "name");

 

5 Serializing an object to XML

String xmlStr=stream.toXML(list); System.out.println(xmlStr);

 

看看打印出的结果:

<users> <user> <NAME>张三</NAME> <pwd>123</pwd> </user> <user> <NAME>李四</NAME> <pwd>456</pwd> </user> </users>

 

 以上例子是参照xtream官方上的一个开发指南写的,下一篇文章打算详细介绍下xstream的别名问题。今天就写到这里。

相关资源:《xStream完美转换XML、JSON》学习笔记
转载请注明原文地址: https://www.6miu.com/read-5011350.html

最新回复(0)