在非实体java bean

时间:2018-03-07 09:46:14

标签: java spring hibernate

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

我有5个名为

的班级

1.Reqest - >使用请求表映射

2.团队 - >使用团队表格映射

3.Partner -Mapped with Partner Table

4.Customer - >使用客户表映射

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

假设我按如下方式创建bean类。



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




}
 




现在由于我将所有表都映射到Java类,我可以使用hql join query来获取数据。

我不想在连接中使用普通的SQL查询,然后将生成的Object []列表从hibernate查询和存根数据手动迭代到SummaryBean中。

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

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

1 个答案:

答案 0 :(得分:0)

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

这样的东西
"select new SummaryBean(req, team, cust, part) from (here you join your tables)"

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

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