如何在spring框架中使用HibernateTemplate调用存储过程?

时间:2010-05-14 05:34:15

标签: java hibernate spring stored-procedures

任何人都可以帮我在spring框架中使用HibernateTemplate调用存储过程吗?我是Hibernate的新手,所以请帮助我。

提前致谢,

Sinu Mathews

2 个答案:

答案 0 :(得分:1)

在Hibernate中,存储过程只是named queries的特例,您可以使用findByNamedQuery()方法之一使用HibernateTemplate执行命名查询。

答案 1 :(得分:0)

你不能使用HibernateTemplate调用你的程序,使用SessionFactory中的getCurrentSession()方法或使用HibernateTemplate中的getSession。

如果你的过程没有返回游标或函数,你可以使用findByNameQuery()方法,但是如果你的过程返回一些游标或函数,该方法将不起作用。

如果发生这种情况,您必须从会话中获取 Connection

java.sql.Connection con = getSession().connection;<br>
CallableStatement statement = con.prepareCall(<your procedure>);<br>
//some setting parameter for your procedure<br>
statement.execute();