标签:list java san stringbu 方法 私有字段 占用 not tag
@XStreamAlias使用
一、 特点:
简化的API;
无映射文件;
高性能,低内存占用;
整洁的XML;
不需要修改对象;支持内部私有字段,不需要setter/getter方法
提供序列化接口;
自定义转换类型策略;
二、 使用场景
Transport转换
Persistence 持久化对象
Configuration 配置
Unit Tests 单元测试
Interface服务之间XML消息的交互
案例代码:
@XStreamAlias("kfpt_dept")
class Dept {
private String deptName;
private List<Staff> staffs;
public String getDeptName() {
return deptName;
}
public void setDeptName(String deptName) {
this.deptName = deptName;
}
public List<Staff> getStaffs() {
return staffs;
}
public void setStaffs(List<Staff> staffs) {
this.staffs = staffs;
}
@Override
public String toString() {
return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE);
}
}
@XStreamAlias("kfpt_staffs")
class Staff {
private String name;
private int age;
public Staff() {
super();
}
public Staff(String name, int age) {
super();
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE);
}
}
转换工具类:
public class XstreamUtil { /** * 将bean转换为xml * @param obj 转换的bean * @return bean转换为xml */ public static String objectToXml(Object obj) { XStream xStream = new XStream(); //xstream使用注解转换 xStream.processAnnotations(obj.getClass()); return xStream.toXML(obj); } /** * 将xml转换为bean * @param <T> 泛型 * @param xml 要转换为bean的xml * @param cls bean对应的Class * @return xml转换为bean */ public static <T> T xmlToObject(String xml, Class<T> cls){ XStream xstream = new XStream(new DomDriver()); //xstream使用注解转换 xstream.processAnnotations(cls); return (T) xstream.fromXML(xml); } }
待续。。。。。。。。。。。。。
标签:list java san stringbu 方法 私有字段 占用 not tag
原文地址:http://www.cnblogs.com/wuyun-blog/p/7800067.html