我正在使用spring / hibernate独立应用程序。如果我没有配置交易,我就会陷入困境。
Exception in thread "Thread-1" org.hibernate.HibernateException: No Hibernate Session bound to thread, and configuration does not allow creation of non-transactional one here
在spring / hibernate集成应用程序中,是否必须进行事务配置?
谢谢!
答案 0 :(得分:2)
基本上,是的。 Hibernate documentation说:
数据库或系统,事务边界始终是必需的。没有 与数据库的通信可以在数据库之外进行 交易(这似乎混淆了许多习惯于开发人员的开发人员 自动提交模式)。始终使用明确的事务边界,即使是 只读操作。取决于您的隔离级别和数据库 可能不需要这些功能,但如果没有任何缺点 你总是明确划分交易。当然,一个 数据库事务的性能要好于许多小事 交易,甚至是阅读数据。