dozer客户转换器在没有xml配置的情况下无法工作

0tdrvxhp  于 2021-07-13  发布在  Java
关注(0)|答案(0)|浏览(186)

我是推土机Map技术转换一种类型的对象到另一种类型的对象。为此,我编写了自己的自定义转换器。在下面的代码中,myconvertor是

@Component
public class MyConvertor extends AbstractConverter<Source, Destination> {

    public MyConvertor() {
        super(Source.class, Destination.class);
    }

    @Override
    public Destination convertTo(Source source, Destination destination) {
        return null;
    }

}

private DozerBeanMapper getDozerBeanMapper(String xmlMapping, Entity entity) {
        DozerBeanMapper dozerBeanMapper = new DozerBeanMapper();
        dozerBeanMapper.addMapping("test.xml");
        dozerBeanMapper.setCustomConverters(Arrays.asList(new MyConvertor()));
        return dozerBeanMapper;
    }

xml文件不包含任何转换器引用,我不想在这里添加转换器。我的理解是因为我在java代码中添加了这个转换器,所以它应该选择。但当我运行测试用例时,它不起作用。

<mappings xmlns="http://dozer.sourceforge.net"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://dozer.sourceforge.net
http://dozer.sourceforge.net/schema/beanmapping.xsd">
    <mapping>
        <class-a>test.dto.Source</class-a>
        <class-b>test.dto.Destination</class-b>
        <field>
            <a>test.id</a>
            <b>id</b>
        </field>

    </mapping>
</mappings>

有什么问题吗?我是否也需要在xml文件中添加转换器。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题