【问题标题】:How to assign a native query result to a Pojo Class如何将本机查询结果分配给 Pojo 类
【发布时间】:2019-08-31 16:48:14
【问题描述】:

我在我的项目中使用 JPA 和 hibernate。

我遇到了一个需要加入 6 个表的查询。 结果将给出 20 列。

我的实体类是:

  • 发票帐户
  • 资产协议
  • 资产
  • 订单项
  • 产品协议

  • 产品

我的 pojo 类是 AggregateDetail,其中包含我将从本机查询中获得的所有 20 个变量。

有没有办法实现这个。

【问题讨论】:

  • 您可以使用 CreateSQLQuery 和 Result 转换器来实现这一点。 stackoverflow.com/questions/55545239/…
  • 在该示例中,InvoiceItems 似乎是一个实体类。但我需要将结果分配给非实体类

标签: hibernate jpa ejb-3.2


【解决方案1】:

我认为你可以这样做:

List<? extends Object> results=entityManager.createQuery("YOUR QUERY").getResultList();

最后你可以转换结果,当然是在测试每个对象之后。

【讨论】:

  • 什么是“?”在这里的意思
  • 这意味着任何类都从 Object 扩展而来,因为您知道 JAVA 中的所有类都扩展了 Object 类,所以这意味着您想要的任何类。
  • 另外你必须知道 List extends Object> 和 List 第二个意味着这个列表只接受 Object 类型的类。
猜你喜欢
  • 2018-06-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-07
  • 1970-01-01
  • 2021-09-12
相关资源
最近更新 更多