XStream xml与javabean之间的互转

前端之家收集整理的这篇文章主要介绍了XStream xml与javabean之间的互转前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

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

实例:

user.java

[java] view plain copy
  1. importjava.io.Serializable;
  2. publicclassUserimplementsSerializable{
  3. privateStringid;
  4. privateStringname;
  5. privateStringage;
  6. publicUser(){
  7. }
  8. publicUser(Stringid,Stringname,Stringage){
  9. this.id=id;
  10. this.name=name;
  11. this.age=age;
  12. }
  13. publicStringgetId(){
  14. returnid;
  15. voidsetId(Stringid){
  16. publicStringgetName(){
  17. returnname;
  18. voidsetName(Stringname){
  19. this.name=name;
  20. publicStringgetAge(){
  21. returnage;
  22. voidsetAge(Stringage){
  23. }


BaseBean.java

copy
@H_403_188@importjava.util.ArrayList;
  • importjava.util.List;
  • classBaseBean{
  • privateList<User>userList;
  • publicBaseBean(){
  • userList=newArrayList<User>();
  • publicList<User>getUserList(){
  • returnuserList;
  • voidsetUserList(List<User>userList){
  • this.userList=userList;
  • voidaddUser(Useruser){
  • userList.add(user);

  • xstream代码

    copy
  • @H_403_188@classXStreamTest{
  • staticvoidmain(String[]args){
  • //javabean转xml
  • List<User>users=newArrayList<User>();
  • users.add(newUser("123","爱边程","23"));
  • users.add(newUser("456","刘大拿","24"));
  • BaseBeanbase=newBaseBean();
  • base.setUserList(users);
  • XStreamxs=newXStream();
  • xs.alias("root",BaseBean.class);
  • xs.alias("user",User.class);
  • xs.aliasField("list",153); font-weight:bold; background-color:inherit">class,"userList");
  • Stringxml=xs.toXML(base);
  • System.out.println("javabean转成xml为:\n"+xml);
  • //xml转javabean
  • XStreamxs1=newXStream(newDomDriver());
  • xs1.alias("root",153); font-weight:bold; background-color:inherit">class);//注意此处要把原要转换的bean类定义别名为根节点的名字,如上面的xml的根节点为<root>
  • xs1.alias("user",153); font-weight:bold; background-color:inherit">class); //此处与上面相同
  • xs1.aliasField("list",108); list-style:decimal-leading-zero outside; color:inherit; line-height:18px; margin:0px!important; padding:0px 3px 0px 10px!important"> base=(BaseBean)xs1.fromXML(xml);
  • users=base.getUserList();
  • System.out.println("xml转成javabean为:");
  • for(Useru:users){
  • System.out.println("id="+u.getId()+",name="+u.getName()+",age="+u.getAge());
  • }
  • 猜你在找的XML相关文章