java事务 (面试知识储备)
来源:互联网 发布:github for mac中文版 编辑:程序博客网 时间:2024/04/26 15:46
事务的概念:
事务的概念源于数据库, 数据库中事务就是一组原子性操作,在java中就是一组sql语句 , 如果一组原子性操作(一组sql语句)其中有一个出错 ,之前执行的数据全部失效 . 简单理解:全部执行与全部不执行.
事务的特点:
事务遵守ISO和IEC指定的ACDI原则: 原子性(atomicity) 一致性(consistency) 隔离性(isolation) 持久性 (durability).
原子性(atomicity):事务执行过程中如果出错 之前执行的修改将全部失效.
一致性(consistency):事务执行失败时 所有被事务影响的数据都恢复到 事务执行之前的状态.
隔离性(isolation):事务执行过程中对数据的修改. 该事务提交之前对其他事务是不可见的.
持久性(durability):事务的提交后对数据库的影响是永久的.
事务的作用:
假如: A 转账给 B 当A转账1000 需要先修改数据库中A 的数据 -1000 A数据修改后 这个时候出错了 那么事务就起到作用了 修改后的A数据将回滚, 保证了业务的正确 .
java事务的类型:
一共三种:Jdbc(Java DataBase Connectivity)事务;JTA(Java Transaction API)事务;容器事务;
Jdbc事务: jdbc事务是用Connection对象控制的. jdbc Connection (java.sql.connection) 接口提供了两种事务模式:自动提交和手动提交. java.sql.connection 提供了以下方法控制事务:
public void setAutoCommit(boolean);
public boolean getAutoCommit();
public void commit();
public void rollback();
使用jdbc 事务界定时 , 可以将多个sql语句结合到一个事务中. jdbc 事务的一个缺点是事务的范围局限于一个数据库连接,一个jdbc事务不能跨越多个数据库.
暂时到这剩下的较复杂以后再补充.
我要看原文
- java事务 (面试知识储备)
- 知识储备:Java面试知识储备
- java MVC(面试知识储备)
- java三大集合框架(面试知识储备精华篇)
- servlet 生命周期(面试知识储备)
- Java知识学习储备
- java架构师知识储备
- 知识储备
- 知识储备
- 知识储备:java群聊系统
- Java EE知识储备(一)
- Java EE知识储备(二)
- Java EE知识储备(三)
- Java EE知识储备(四)
- Java EE知识储备(五)
- Java EE知识储备(六)
- Java EE知识储备(七)
- Java EE知识储备(八)
- SQL入门学习笔记(1)
- 用c实现俄罗斯方块游戏过程
- ucontext-人人都可以实现的简单协程库
- 【GDOI2018模拟7.12】A 线段树+树状数组
- 使用Fiddler本地资源替换进行线上调试
- java事务 (面试知识储备)
- Qt实现服务器与客户端传输文字和图片(Qt②)
- vim 使用多窗口
- 采矿
- Tensorflow--实现KNN
- hadoop单机配置搭建
- 基于Servlet面试题进行JavaWeb入门学习
- ios description对NSLog的使用补充
- win10一直停留在开机界面