关于使用commons-betwixt组件实现xml信息-->Java Bean的转化的一些感受

实现这一功能的核心类是BeanReader,如果你看过betwixt的源代码,你会发现
public class BeanReader extends Digester{}
如果你细看一下BeanReader的源代码,你会发现betwixt在处理xml-->JavaBean转化时其实是调用Digester这个类的parse方法。但除了此方式

可以实现转化的功能以外,BeanReader自身也有一些新的机制对xml进行转化,完善了Digester的很多欠缺功能,让转化更加方便。

首先,来看一下BeanReader完全使用Digester的parse方法进行转化的流程。(其实觉得说是Digester怎样处理转化更为恰当)
1。xml信息
******************examples.xml*************************
<address-book>
  <person id="1" category="acquaintance" try="would be ignored">
    <name>Gonzo</name>
    <email type="business">gonzo@muppets.com</email>
    <gender result="the whole tag would be ignored">male</gender>
  </person>
  <person id="2" category="rolemodel">
    <name>Kermit</name>
    <email type="business">kermit@muppets.com</email>
    <email type="home">kermie@acme.com</email>
  </person>
</address-book>
******************examples.xml*************************
2。定义实体对象Person和AddressBook
******************Person.java**************************
import java.util.HashMap;
import java.util.Iterator;

public class Person {
 private int id;
   private String category;
   private String name;
   private HashMap emails = new HashMap();
     
   /**
    * A unique id for this person. Note that the Digester automatically
    * converts the id to an integer.
    */
   public void setId(int id) {
       this.id = id;
   }
  
   public void setCategory(String category) {

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值