我使用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
接口),它只将方法暴露给map bean。
所以我的问题是:是否有一个API以编程方式查找映射?
答案 0 :(得分:1)
我不确定Dozer是否有用于检查映射的公共API。
您可以尝试ModelMapper,这是一个对象映射库,它提供与Dozer相同的所有功能以及用于检查映射的服务提供程序接口(SPI)。您的示例的用法很简单:
ModelMapper modelMapper = new ModelMapper();
List<Mappings> mappings = modelMapper.createTypeMap(A.class, B.class).getMappings();
查看ModelMapper网站了解更多信息: