Orika多态映射

时间:2014-09-22 11:31:49

标签: java orika

我有以下实体:

public class Activity 
{
   private Long activityId;
   private String name;
   private Long year;

}


public class Course extends Activity 
{
    private Long duration;
    private Date startDate;
    private Date endDate;
    ....
}

public class Conference extends Activity
{
   private Date dueDate;
   private Person speaker;
   ....
} 

我已经在我的数据库中将其建模为一个Activity表,其中包含子实体的所有attrbitues,然后使用单表策略将它们映射到Hibernate上。

我想检索给定年份的所有活动。我知道如何通过Hibernate在数据访问层上做到这一点,我的问题是使用Orika mapper映射那些多态对象(其中一些是课程,其中一些是会议):我总是最终得到没有每个具体实体的Activity对象属性。

更具体地说,我有第四节课,我们称之为A,其中有Activity个元素列表,可能是CourseConference类,我想像这样映射:

ADTO adto = map(A, ADTO.class);

我在互联网上没有找到关于这个问题的任何信息...

1 个答案:

答案 0 :(得分:1)

Orika支持多态映射,并且在集合中也是

请查看此PolicyElementsTestCase

在Orika的测试代码中有很多用例,你可以参考。希望这可以帮到你。