java—jpa中的分页,从多个表中选择时休眠

v64noz0r  于 2021-07-08  发布在  Java
关注(0)|答案(3)|浏览(254)

我有两个类实体有一些相同的属性。如何从2表中选择分页并将其转换为类dto?

@Entity
class A {
  var id: Long,
  var name: String,
  var price: Float,
  ...//more
}

class B {
  var id: Long,
  var name: String,
  var price: Float,
  var isSpecial: Boolean,
  ...//more
}

我希望你能从 class A 以及 class BisSpecial = true . 我尝试用hql选择新的,但hibernate不支持联合。我尝试使用本机查询,然后引发resultset异常。

oxiaedzo

oxiaedzo1#

始终可以使用创建数据库视图 UNION . 然后按视图Map一个实体,并像其他实体一样使用它。

ttcibm8c

ttcibm8c2#

解决方案是使用继承Map类并查询公共基类。然后可以使用dto投影查询dto。

quhf5bfb

quhf5bfb3#

hibernate还不支持联合。您可以使用本机查询,也可以使用blaze持久性,后者在hibernate之上工作,并支持union等set操作。

相关问题