标签:就是 factory 情况 用户 enc 范围 多次 查看 mybatis
? Connection setAutoCommit() 执行查询没有影响 执行增删改时
? SqlSessionFactory openSession(boolean autoCommit) 默认值就是false 开启事务
? SqlSession对象 commit(),如果在mybatis使用中向关闭事务,需设置autoCommit为true
事务是由单独单元的一个或者多个sql语句组成的,在这个单元中,每个sql语句都是相互依赖的,而整个单独单元 是一个不可分割的整体。如果单元中某条sql语句执行异常,那么整个这个单独单元则将会回滚。
? 脏读
脏读是指一个事务处理过程中读取到了另外一个事务尚未提交的事务中的数据。
不可重复读
不可重复读是指对于数据库中的某个数据,一个事务范围内多次查询却返回了不同的数据值,这是在查询的时间间隔内,被另外一个事务修改并提交了。
虚读(幻读)
幻读是指事务非独立运行时发生的一种现象,例如有两个事务A、B,这两个事务同时对用户表user做操作,事务A对用户表做了全局修改 把用户表中的所有人的性别改为男性。这时候同时另外一个事务B往用户表中插入了一条新数据 新数据中的性别为女性,并且这个数据进行提交到数据库。
这时候事务A如果再次查看用户表修改的数据,发现有一条数据的性别为女性。对于事务A来说就好像产生了 幻觉一样,这就是幻读。
不可重复读和幻读都是读取到了另外一个已经提交的事务数据(和脏读现象不一样)
这个mybatis的事务我们移植到Spring中。
标签:就是 factory 情况 用户 enc 范围 多次 查看 mybatis
原文地址:https://www.cnblogs.com/zlh109/p/14470759.html