XStream实现javabean与xml之间相互转换

XStreamthoughtworks公司发布的一个简单的Java类库,用于将JavaBean序列化为XML,并且能够将XML文件反向转换为JavaBean.

实例:

user.java

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

 import java.util.ArrayList;  
	 import java.util.List;  
	   
	 public class BaseBean{  
	     private List userList;  
	     public BaseBean(){  
	         userList = new ArrayList();  
	     }  
	     public List getUserList() {  
	         return userList;  
	     }  
	   
	     public void setUserList(List userList) {  
	         this.userList = userList;  
	     }  
	      public void addUser(User user) {     
	          userList.add(user);     
	       }  
	 } 


xstream代码

public class XStreamTest {  
	     public static void main(String[] args) {  
	         //javabean 转 xml   
	         List users = new ArrayList();  
	         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());  
	         }  
	     }  
	   
	 }

你可能感兴趣的:(coreJava)