直接贴代码:
User.java
package com.huilan.wcm.util.XStream;
import java.io.Serializable;
public class User implements Serializable{
private String id;
private String name;
private String age;
public User(){
}
public User(String id,String name,String age){
this.id=id;
this.name=name;
this.age=age;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
}
BaseBean.java
package com.huilan.wcm.util.XStream;
import java.util.ArrayList;
import java.util.List;
public class BaseBean{
private List<User> userList;
public BaseBean(){
userList = new ArrayList<User>();
}
public List<User> getUserList() {
return userList;
}
public void setUserList(List<User> userList) {
this.userList = userList;
}
public void addUser(User user) {
userList.add(user);
}
}
测试类XStreamTest.java
package com.huilan.wcm.util.XStream; import java.util.ArrayList; import java.util.List; import com.huilan.wcm.util.Betwixt.BaseBean; import com.huilan.wcm.util.Betwixt.User; import com.thoughtworks.xstream.XStream; import com.thoughtworks.xstream.io.xml.DomDriver; public class XStreamTest { public static void main(String[] args) { //javabean 转 xml List<User> users = new ArrayList<User>(); users.add(new User("123", "艾丝凡", "23")); users.add(new User("456", "呃呃呃", "24")); BaseBean base = new BaseBean(); base.setUserList(users); XStream xs = new XStream(); xs.alias("root", BaseBean.class); xs.alias("user", User.class); xs.aliasField("list", BaseBean.class, "userList"); String xml=xs.toXML(base); System.out.println("javabean转成xml为:\n"+xml); //xml转javabean XStream xs1 = new XStream(new DomDriver()); xs1.alias("root", BaseBean.class); xs1.alias("user", User.class); xs1.aliasField("list", BaseBean.class, "userList"); base=(BaseBean)xs1.fromXML(xml); users=base.getUserList(); System.out.println("xml转成javabean为:"); for(User u:users){ System.out.println("id="+u.getId()+",name="+u.getName()+",age="+u.getAge()); } } }
输出结果:
javabean转成xml为:
<root>
<list>
<user>
<id>123</id>
<name>艾丝凡</name>
<age>23</age>
</user>
<user>
<id>456</id>
<name>呃呃呃</name>
<age>24</age>
</user>
</list>
</root>
xml转成javabean为:
id=123,name=艾丝凡,age=23
id=456,name=呃呃呃,age=24