簡體   English   中英

復雜對象列表的推土機映射

[英]Dozer mapping of Lists of Complex Object

有沒有一種方法可以將一個對象列表映射到一個對象列表ID? 我有以下對象:

public class Role implements Serializable {
    private List<Section> sections;
    //getters and setters
    ...
}

public class Section {
    private Long id;
    //getters and setters
    ...
}

public class RoleDTO implements Serializable {
    private List<Long> sections;
    //getters and setters
    ...
}

如何使用Dozer XML進行映射?

注意:這不是答案...更多是希望

如果推土機支持Groovy的傳播算子,那將是很好的。 這將是一個不錯的功能要求

例如:

<field>
    <a>sections*.id</a>
    <b>sections</b>
</field>

您可以使用自定義轉換器

推土機XML

<field custom-converter-id="mySectionsConverter">
  <a>sections</a>
  <b>sections</b>
</field>

春季XML

<bean id="mapper" class="org.dozer.spring.DozerBeanMapperFactoryBean">
    <property name="mappingFiles" value="..." />
    <property name="customConvertersWithId">
        <map>
           <entry key="mySectionsConverter" value-ref="..." />
        </map>
    </property>
</bean>

注意:我正在從應用程序中刪除推土機,因為我覺得這很復雜。 在我看來,簡單的java POJO轉換器類比所有這些XML,自定義轉換器和spring接線要好得多。 我還發現了無法在嵌套轉換器中重用某個值的情況,這會導致多個數據庫命中,而POJO解決方案則不需要。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM