Spring 事务的隔离级别本质上就是数据库的隔离级别,外加一个默认级别:
read uncommitted:读取未提交
read committed:读取已提交
repeatable read:可重复读
serializable:可串行化
隔离级别越高,数据库出问题的可能性越低,但效率也会越低。
如果设置为 DEFAULT 会使用数据库的默认隔离级别。
SqlServer , Oracle 默认的事务隔离级别是 READ_COMMITED
Mysql 的默认隔离级别是REPEATABLE_READ
问:数据库的配置隔离界别是 Read Committed,而 Spring 配置的隔离级别是 Repeatable Read,请问这时隔离级别是以哪一个为准?
以 Spring 配置的为准,如果 Spring 设置的隔离级别数据库不支持,结果取决于数据库。