database - Spring Framework 中的默认隔离级别

标签 database spring isolation-level

我在服务层 中有一个方法,它对数据库执行更新功能。

@Transactional(propagation = Propagation.REQUIRES_NEW)
public void update(final Object obj){
    // some code here
}

现在我想知道Spring框架给这个方法设置的隔离级别是多少?

我是 Spring 的新手,只是想让自己熟悉 事务

请分享一些设置隔离级别的最佳实践和方法,以避免死锁,从而防止同一用户尝试从不同浏览器更新他的记录。

最佳答案

根据docs (Isolation.DEFAULT) ,它使用

Use the default isolation level of the underlying datastore.

当您使用 @Transactional 注释时,我会在此处设置隔离级别,例如:

@Transactional(propagation=Propagation.REQUIRES_NEW, isolation=Isolation.SERIALIZABLE)

关于database - Spring Framework 中的默认隔离级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9603312/

相关文章:

数据库设计 : Creating an association of an association

java - 在数据库项目中实现设计模式

java - 使用 @PathVariable 重定向到另一个 Controller

javascript - extjs 中的级联组合框

sql-server - 共享读锁什么时候释放?

php - 计算数据库中存在的相同项目的总数

database - 复制如何在分布式数据库中工作

java - 是什么原因导致“java.lang.IllegalStateException:BeanResult'command'的BindingResult和普通目标对象都不能用作请求属性”?

database - Postgres 中的脏读

mysql - 当隔离级别为 READ COMMITTED 时,MySQL InnoDB 是否使用 UNION 在多个表上为 SELECT 创建一致的快照