xml操作工具分享-描述篇

本文介绍了一款实用工具,能轻松实现XML字符串与Java对象间的相互转换,支持属性层级处理,适用于WebService系统间通信场景。

    准备介绍一个操作xml的工具,由于代码太长,逻辑有点复杂。所以分2篇文章介绍,这里先介绍本工具实现的主要功能。

本工具在webservice系统间通信时尤为有用。

其主要有2个用途:

  1)  根据xml字符串转相应java对象,支持list属性层级和普通属性层级

  2)  根据java对象转相应的xml字符串,支持嵌套转xml

  先给出简单的说明例子,比如:

  假设我们已经定义了一个学生类Student,有属性id,name,bir,age及相应的get,set方法,有相应xml字符串,

 "<Student age=/"10/">"+
      "<NAME>hhh</NAME>"+
      "<ID></ID>"+
      "<BIR></BIR>"+
  "</Student>"

现在来看我们的简单工具是怎么使用的?,够不够简单?呵呵

 

用途1: 对于给定xml转java对象

 

    使用代码如下,

    String xml="<Student age=/"10/">"+
                       "<NAME>hhh</NAME>"+
                       "<ID></ID>"+
                       "<BIR></BIR>"+
                  "</Student>";
  Student s=new Student();

  //共有3个参数
  s = (Student) XmlUtil.createTarget(xml, s, null);
  System.out.println(s.toString());

  参数说明,参数1,2很明了。

  参数3:截断表达式字符串,有时xml协议会有许多的头结点信息,我们可以直接从我们关心的节点开始截取进行

解析成java对象 举个例子如下,

   

 

    String xml="<XML><DATA><Student age=/"10/">"+
                       "<NAME>hhh</NAME>"+
                       "<ID></ID>"+
                       "<BIR></BIR>"+
                  "</Student>"+

                  "</DATA></XML>";
  Student s=new Student();

  //共有3个参数
  s = (Student) XmlUtil.createTarget(xml, s, "//DATA/");//表示截取DATA结点下的xml字符串转对象
  System.out.println(s.toString());

 

 

用途2:对于给对象,将其转化为具有层级关系的xml字符串,并且属性age属于相应的节点

    Student s=new Student();
    s.setAge("10");
    s.setName("hhh");

    String xml = XmlUtil.createXml(s);
    System.out.println(xml);

   结果同上的xml。

工具不错吧,你只需提供你的javabean和xml,那么利用本工具只需一行代码即可完成相互转化。

完整的测试代码如下(xml操作工具分享-实现篇) 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值