//相当于开启事务 //当我们execute的时候,就和服务端建立链接 dataSource.getConnection().createStatement();
//事务的回滚
dataSource.getConnection().rollback();
//默认的话是自动提交,所有的事务操作框架都会把autoCommit改成false,否则的话无法手动干预
dataSource.getConnection().setAutoCommit(false);
//只读事务
dataSource.getConnection().setReadOnly(true);
//事务的提交
dataSource.getConnection().commit();
1、数据库操作,都会通过事务来管理
ACID,最大的问题,解决数据一致性的问题,能量守恒
分布式:分布式事务处理瞬时一致性,通常说的是最终的一致性(异步核对,主流的方式就通过日志)
事务的操作流程:事务只是一种思想,该如何用技术实现

像一般操作的Connection(接口)类,这个类是java客户端和数据库事务通信的桥梁,也就是一个包装类,就是一个TCP链接,底层就是socket
但java自己不实现,只是提供这个封装,提供这个JDK,让其他相关数据库厂商自己实现,所以我们要单独导入类似Mysql的jar包

DataSource就是一个Connection的wrapper,也就是Connection的一个包装器
3.
抛出异常回滚,在Spring中异常是要配置的,只有抛出了配置了的异常才会回滚

来源:https://www.cnblogs.com/zhangliang1726/p/11944722.html