我已经在网络上阅读过各种文章,但就这一点而言,它们似乎比较分散。确切地讲,我需要在配置和方法中执行哪些操作才能获取hibernate会话。我正在尝试对存储过程进行一些直接的sql调用。我有一个很大的代码库,我从Ruby移植了很多静态方法和存储过程调用。如果我需要使用sessionFactory,那么我该如何访问它?
从静态方法中,您可以从应用程序上下文中提取sessionFactory bean:
import org.codehaus.groovy.grails.commons.ApplicationHolder as AH ... def ctx = AH.application.mainContext def sessionFactory = ctx.sessionFactory def session = sessionFactory.currentSession