首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将查询设置为未提交读取?

如何将查询设置为未提交读取?
EN

Stack Overflow用户
提问于 2010-01-07 04:18:23
回答 5查看 21.3K关注 0票数 5

使用hibernate,我如何将查询设置为读取未提交?我不希望这是一个全局设置,只想在每个查询的基础上进行设置。

EN

回答 5

Stack Overflow用户

发布于 2013-07-28 11:06:44

结合使用Spring和Hibernate,可以让Spring使用注释控制事务,这是一些类似于spring applicationContext.xml中的配置:

代码语言:javascript
复制
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    <property name="sessionFactory" ref="sessionFactory"/>
</bean>

<!-- To use annotation driven in aspect mode (mode="aspectj"), it is necessary to add spring-aspects lib -->
<tx:annotation-driven transaction-manager="transactionManager" />

实现这一点的最好方法是使用如下所示的注释:

代码语言:javascript
复制
@Transactional(propagation=Propagation.REQUIRED, isolation=Isolation.READ_UNCOMMITTED)
票数 3
EN

Stack Overflow用户

发布于 2010-01-07 04:39:15

你试过session.connection().setTransactionIsolation(...)吗?

附注:对于现代的MVCC-based数据库管理系统,你不需要使用"read uncomitted“来避免锁。有些DBMS甚至没有实现这种隔离级别。

票数 2
EN

Stack Overflow用户

发布于 2010-01-07 04:45:26

设置事务隔离级别:

代码语言:javascript
复制
session.connection().setTransactionIsolation(Connection.TRANSACTION_READ_UNCOMMITTED);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2015903

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档