配置 Hibernate 以从连接池获取新连接
如何配置 Hibernate 以便每次调用 sessionFactory.openSession() 时它都会与连接池中的新连接连接?连接池由Websphere Application Server 管理,是一个JDBC 数据源。
谢谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是默认行为,每个会话都会从连接池中获取一个专用连接。
不,他们不是。但也许第二个连接会在为请求发起的事务结束时被释放。看看
hibernate.connection.release_mode
配置参数,您可能需要使用on_close
。但如果没有有关您的交易策略的更多详细信息,就无法说什么。接受我之前的建议,您不应该生成 非托管线程,我不知道应用程序服务器将如何运行。我在 这个其他答案中解释 什么是正确的方法。
This is the default behavior, each session will get a dedicated connection from the connection pool.
No they are not. But maybe the second connection gets released at the end of the transaction initiated for the request. Have a look at the
hibernate.connection.release_mode
configuration parameter, you might want to useon_close
. But without more details on your transaction strategy, it's impossible to say anything.Take my previous advice with a grain of salt, you should just not spawn unmanaged threads and I don't know how the application server will behave. I explain in this other answer what would be the right way.