加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

XStream xml与javabean之间的互转

发布时间:2020-12-16 05:53:13 所属栏目:百科 来源:网络整理
导读:XStream是thoughtworks公司发布的一个简单的Java类库,用于将JavaBean序列化为XML,并且能够将XML文件反向转换为JavaBean. 实例: user.java [java] view plain copy import java.io.Serializable; public class User implements Serializable{ private Strin

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
    importjava.util.ArrayList;
  1. importjava.util.List;
  2. classBaseBean{
  3. privateList<User>userList;
  4. publicBaseBean(){
  5. userList=newArrayList<User>();
  6. publicList<User>getUserList(){
  7. returnuserList;
  8. voidsetUserList(List<User>userList){
  9. this.userList=userList;
  10. voidaddUser(Useruser){
  11. userList.add(user);

  12. xstream代码

    copy
      classXStreamTest{
    1. staticvoidmain(String[]args){
    2. //javabean转xml
    3. List<User>users=newArrayList<User>();
    4. users.add(newUser("123","爱边程","23"));
    5. users.add(newUser("456","刘大拿","24"));
    6. BaseBeanbase=newBaseBean();
    7. base.setUserList(users);
    8. XStreamxs=newXStream();
    9. xs.alias("root",BaseBean.class);
    10. xs.alias("user",User.class);
    11. xs.aliasField("list",153); font-weight:bold; background-color:inherit">class,"userList");
    12. Stringxml=xs.toXML(base);
    13. System.out.println("javabean转成xml为:n"+xml);
    14. //xml转javabean
    15. XStreamxs1=newXStream(newDomDriver());
    16. xs1.alias("root",153); font-weight:bold; background-color:inherit">class);//注意此处要把原要转换的bean类定义别名为根节点的名字,如上面的xml的根节点为<root>
    17. xs1.alias("user",153); font-weight:bold; background-color:inherit">class); //此处与上面相同
    18. 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);
    19. users=base.getUserList();
    20. System.out.println("xml转成javabean为:");
    21. for(Useru:users){
    22. System.out.println("id="+u.getId()+",name="+u.getName()+",age="+u.getAge());
    23. }

    (编辑:李大同)

    【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读