Dozer Map映射注意点

在使用dozer进行数据映射时,有一种情况,我们需要将一个对象里面的部分数据映射到一个Map中(这里使用HashMap)

 

开始我参考了dozer的文档这样写:

 

<mapping >
        <class-a>com.test.obj</class-a>
        <class-b>java.util.HashMap</class-b>
        <field>
            <a>mytitle</a>
            <b key="Title">this</b>
            <b-hint>java.lang.String</b-hint>
        </field>
    </mapping>
 

发现不论怎么样,都会把class-a中的所有字段都映射到Map中,并且加上<field-exclude>标签都不管用

 

后来查看了官方的例子,发现其实只要修改一下就OK了,配置文件这样写:

 

<mapping map-id="mymapping">
        <class-a >java.util.HashMap</class-a>
        <class-b>com.test.obj</class-b>
        <field >
            <a>Title</a>
            <b>mytitle</b>
            <a-hint>java.lang.String</a-hint>
        </field>
    </mapping>

 

并且可以增加<field-exclude>标签也是有效的。注意的是 <a>Title</a>是指Map中的Key.

映射是注意指定map-id。

默认情况下,没有在xml配置中写出来的字段是不会映射的。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值