2010-06-15 100 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

相關問題