2010-06-15 99 views
0

我使用Dozer在Java bean之间进行映射。我有一个推土机映射文件,其中包含所有映射。示例映射如下所示:如何在运行时在Dozer中查找属性的映射?

<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以编程方式查找映射?

+0

有没有什么不能使用XML映射文件的一个原因? – McDowell 2010-06-15 10:35:06

+0

我有XML映射文件。我需要在运行时发现这些映射。 – 2010-06-15 10:37:17

回答

1

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

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

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

退房的ModelMapper网站获取更多信息:

http://modelmapper.org

相关问题