每个类层次结构的联合

时间:2014-03-28 10:37:05

标签: java hibernate hibernate-mapping

我正在制定一项要求。目前有一个搜索页面,其中包含带有值的列表框(示例数据)1)员工和2)体育人员 对象层次结构(Hibernate Bean)         Person是具有两个不同类的实际Object                1)员工和                2)体育人为本          鉴别栏
         Person_Type(Discriminator Column)。

在搜索页面上,如果用户选择任何列表框,将导致该子类的数据。

现在要求将两个子类结果一起显示,并通过在列表框中添加另一个值“Employee + Sports Person”来完成。

问题的   1)两个子类都有不同的结构   2)还有其他标准与不同的属性进行比较。

如何结合两个子类。 请帮我解决。 请注意:我尝试不使用基于查询的联盟。我认为就OOPS而言

1 个答案:

答案 0 :(得分:1)

加载这两类人不应该是个问题。如果您的查询可以访问常用属性,则可以执行FROM Person p WHERE <whatever_person_criteria_you_have>

如果您的查询需要使用EmployeeSportsPerson的特定属性,那么您可以执行2个查询并将结果放入单个List<Person>

对列表进行排序/显示取决于需要显示或比较的数据。如果你必须比较不同的数据,你总是可以使用Comparator<Person>来检查对象的实际类,也可以使用一个包装器来执行相同的访问正确的属性以进行显示。