事务

什么是事务

首先事务是指的一些列操作,这一系列的操作是一个整体,最后通过向系统提交,结果只能是成功或者失败,成功就是提交成功,失败就需要回滚到初始位置。

事务必须满足四个属性,简称为ACID:

1、原子性(Atomicity)
事务是一些列操作的整体,所以是不可分割的,对于结果来说只能是成功或者失败回滚;要么执行,要么失败

2、一致性(Consistency)
所有事务对于数据库读取结果都是一致的,也就是一个事务对一个数据进行操作,结果对于所有的事务读取来说都是一致性的

3、隔离性(Isolation)
一个事务对于数据库进行修改,别的事务来说就不能操作,保证事务的隔离性

4、持久性(Durability)
只要事务结果提交成功,那么提交在数据库中的数据就不可能丢掉,会永久保存

[外链图片转存失败(img-Msso6ThM-1568604157008)(https://github.com/CyC2018/CS-Notes/raw/master/notes/pics/417bc315-4409-48c6-83e0-59e8d405429e.jpg)]
从上图可得到的信息:

  • 只要事务满足了一致性要求,那么事务执行的结果就是正确的;
  • 如果没有出现并发的情况,此时隔离性一定是满足的,所以一致性的结果满足的;
  • 如果出现了并发的情况,那么隔离性和原子性一定要满足,才能得到一致性的结果;
  • 持久性一般是为了应对数据库崩溃的情形

Java中事务的使用

Java事务的类型有三种:JDBC事务、JTA(Java Transaction API)事务、容器事务。

1、传统JDBC操作流程:

1).获取JDBC连接 2).声明SQL 3).预编译SQL 4).执行SQL 5).处理结果集

6).释放结果集 7).释放Statement 8).提交事务 9).处理异常并回滚事务 10).释放JDBC连接
https://blog.csdn.net/weixin_37934748/article/details/82774230

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值