JDBC事务
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JDBC事务相关的知识,希望对你有一定的参考价值。
- 事务是指逻辑上的一组操作,组成这组操作的各个单元要么全部成功,要么全部失败
- 事务的特性
- 原子性:原子性是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生
- 一致性:事务前后数据的完整性必须保持一致
- 隔离性:事务的隔离性是指多个用户并发访问数据库时,一个用户的事务不能被其他用户的事务所干扰,多个并发的事务之间数据要隔离
- 持久性:持久性是指一个事务一旦提交,它对数据库中的数据改变就是永久性的
- 并发访问问题
- 脏读:一个事务读到另一个事务未提交的数据
- 不可重复读:一个事务读到另一个事务已经提交的数据,引发另一个事务,在事务中出现多次查询结果不一致
- 虚读/幻读:一个事务读到另一个事务已经提交的数据,导致另一个事务,在事务中出现多次查询结果不一致(在于新增和删除)
- 隔离级别:解决问题
* read uncommitted :脏读,不可重复读,虚读都可能发生.
* read committed :避免脏读,但是不可重复读和虚读有可能发生.
* repeatable read :避免脏读和不可重复读,但是虚读有可能发生的.
* serializable :避免脏读,不可重复读和虚读.(串行化的-不可能出现事务并发访问)
- 数据的隔离级别
- mysql repeatable read
Oracle read committed
- mysql repeatable read
以上是关于JDBC事务的主要内容,如果未能解决你的问题,请参考以下文章