在 Grails 中,如何访问域类静态方法内的休眠会话?
我在网上读过各种文章,但在这一点上它们似乎相当分散。我到底需要在我的配置和方法中做什么来获取休眠会话。我正在尝试对存储过程进行一些直接 sql 调用。我有一个从 Ruby 移植的大型代码库,其中包含大量静态方法和存储过程调用。如果我需要使用sessionFactory,那么如何访问它?
I've read various articles on the web, but they seem rather scattered on this point. Exactly what do I need to do in my configuration and in my method to get the hibernate session. I'm trying to make some direct sql calls for stored procedures. I have a large code base that I am porting from Ruby with lots of static methods and stored procedure calls. If I need to use the sessionFactory, then how to I get access to it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
通过静态方法,您可以从应用程序上下文中提取 sessionFactory bean:
From a static method you can pull the sessionFactory bean from the application context:
如果是在服务或者控制器中,只需要声明sessionFactory
将其注入。之后就可以参考
使用了。
查看 hibernate-filter 插件(文件 HibernateFilterGrailsPlugin.groovy)了解如何注入一堆使用会话的方法。
If it's in a service or controller, you just need to declare sessionFactory
to have it injected. After that you can refer to
to use it.
Check out hibernate-filter plugin (file HibernateFilterGrailsPlugin.groovy) for how to inject a bunch of methods that use the session.
您可以使用withSession
更多信息
You can use withSession
More info