简体   繁体   English

默认情况下在推土机中调用自定义转换器

[英]Call custom converter after default in dozer

Does Dozer could call custom converter after default? 默认情况下, 推土机能否调用自定义转换器? I want to create something like chain. 我想创建类似链的东西。 At first I want to call default converter to make most of convertion work and only after that call custom converter to populate complex fields? 首先,我想调用默认转换器以使大多数转换工作正常,而仅在调用自定义转换器以填充复杂字段之后才进行?

EDIT 编辑

by default when I create custom converter I need to override two methods. 默认情况下,当我创建自定义转换器时,我需要重写两个方法。 Each of this method has 2 arguments source object and target object . 每个方法都有2个参数source objecttarget object But when we call convertTo method second argument( target object ) equals to null. 但是,当我们调用convertTo方法时,第二个参数( target object )等于null。 So may be I need to specify something in mapping file to make dozer process default converter before custom? 因此,可能需要在映射文件中指定一些内容以使推土机进程在自定义之前成为默认转换器吗?

Sorry for bad english 对不起英语不好

After look into source code I understand that this probably imposible. 在研究了源代码之后,我了解到这可能是不可能的。 Instead of this dozer library propose using custom-converters at field level like this: 代替此推土机库,建议像这样在字段级别使用自定义转换器:

<mapping wildcard="false" >
        <class-a>package.A</class-a>
        <class-b>package.B</class-b>
        <field>
            <a>id</a>
            <b>id</b>
        </field>
        <field custom-converter="test.AtoBNameFieldCustomConverter">
            <a>name</a>
            <b>name</b>
        </field>
</mapping>

May be this help someone. 可能会帮助别人。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM