我用 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
接口(interface)),它只公开了映射 bean 的方法。所以我的问题是:是否有 API 以编程方式查找映射?
最佳答案
我不确定 Dozer 是否有用于检查映射的公共(public) API。
你可以试试ModelMapper ,这是一个对象映射库,提供与 Dozer 相同的所有功能以及用于检查映射的服务提供程序接口(interface) (SPI)。您的示例的用法很简单:
ModelMapper modelMapper = new ModelMapper();
List<Mappings> mappings = modelMapper.createTypeMap(A.class, B.class).getMappings();
查看 ModelMapper 网站了解更多信息:
http://modelmapper.org
关于java - 如何在运行时在 Dozer 中查找属性映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3044311/