java - 在非实体 java bean 中映射多个 hibernate 实体

标签 java spring hibernate

您好,我正在使用带有 Hibernate 的 Spring Boot 应用程序,并使用 Oracle 作为数据库。

我有 5 个类,名为

1.Reqest -> 与请求表映射

2.团队 -> 与团队表映射

3.合作伙伴 - 与合作伙伴表映射

4.客户 -> 与客户表映射

现在我想在应用程序的摘要屏幕上显示请求摘要,其中需要上述表格中的所有信息。

假设我创建一个 bean 类,如下所示。

public class SummaryBean{
 
 Request req;
 
 Team team;
 
 Customer cust;
 
 Partner part;
 
 
 //Getter setters;
 
 




}
 

现在,由于我已将所有表映射到 Java 类,因此我可以使用 hql join 查询来获取数据。

我不想使用带有连接的普通 SQL 查询,然后将 Hibernate 查询生成的 Object[] 列表和 stub 数据手动迭代到 SummaryBean 中。

上述所有表都有 REQ_ID 作为连接列

我的问题是如何使 hibernate 将该查询的结果映射到 SummaryBean 对象? 这可能吗?

最佳答案

您可以使用构造函数查询。

类似

"select new SummaryBean(req, team, cust, part) from (here you join your tables)"

您需要为具有这 4 种类型的 SummaryBean 提供一个构造函数。

请注意,SummaryBean 类不必映射,但您可能必须在查询中使用完全限定名称 (packageName.className)。

关于java - 在非实体 java bean 中映射多个 hibernate 实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49148704/

相关文章:

java - Spring MVC : Saving a string in servlet-context and accessing from java code

java - Spring SessionFactory 注入(inject)问题

java - Hibernate Criteria API 等同于 HQL select 子句?

java - Android Studio 核心转储

java - Android 对话框。在对话框中使用单选按钮,用户必须单击一个

java - 使用后缀数组搜索后缀

java - 为什么这段代码返回一个全是零的数组?

java - 在 weblogic 中部署耳朵的巨大延迟

java - Spring JDBC 中 Hibernate 模型的等价物是什么

java - 在 Hibernate 中使用 HQL 进行查询