我正在编写一个基于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” “上课。
有什么建议吗?