0

我使用Dozer在 Java bean 之间进行映射。我有一个推土机映射文件,其中包含所有映射。示例映射如下所示:

<mapping>
    <class-a>com.xyz.A</class-a>
    <class-b>com.xyz.B</class-b>
    <field>
        <a>key</a>
        <b>id</b>
    </field>
    <field>
        <a>actionId</a>
        <b>action</b>
    </field>
</mapping>

现在我想在运行时找到映射。例如,给一个字段作为字符串com.xyz.A.key,我想找到它以com.xyz.B.id编程方式映射到。我查看了 Dozer API(org.dozer.Mapper接口),它只公开了映射 bean 的方法。

所以我的问题是:是否有 API 以编程方式查找映射?

4

1 回答 1

1

我不确定 Dozer 是否有用于检查映射的公共 API。

您可以尝试ModelMapper,它是一个对象映射库,提供与 Dozer 相同的所有功能以及用于检查映射的服务提供者接口 (SPI)。您的示例的用法很简单:

ModelMapper modelMapper = new ModelMapper();
List<Mappings> mappings = modelMapper.createTypeMap(A.class, B.class).getMappings();

查看 ModelMapper 网站了解更多信息:

http://modelmapper.org

于 2011-06-23T05:33:55.140 回答