通过hibernate调用存储过程

时间:2011-07-02 09:51:01

标签: java stored-procedures join hibernate-mapping

我正在编写一个基于java web的应用程序,它将数据存储在Microsoft SQL Server 2008中,并通过hibernate连接到数据库。

我在源代码中有三个表以及三个与它们相同的类,名为Form,Users和PckgForm。我想从一个控制器类程序中的数据库中调用存储过程。存储过程如下所示,它返回三个表的所有列:

CREATE PROCEDURE [dbo].[UserSentForm]
@UserId varchar(50)
AS
BEGIN
select * 
from Mobile.dbo.Users as us, Mobile.dbo.PckgForm as pf,
 Mobile.dbo.Form as f 
where us.UserId=@UserId and us.UserId=pf.UserId and pf.FrmId=f.FrmId
END

在hibernate.hbm.xml文件中,在提到的存储过程的sql-query标签中我写这个:

return alias="sentForm" class="domain.Form"

但是通过这个值,返回的数据被映射到类domain.Form,在我的源代码中,我只能将其用作“Form”类,而我想将其所有参数用作“Users”类和“PckgForm” “上课。

有什么建议吗?

0 个答案:

没有答案
相关问题