自动提交
启用自动提交后,会在每个SQL语句执行完毕后自动提交事务
事务隔离级别
事务隔离级别保存点
一旦设置保存点,事务就可以回滚到保存点,而不影响保存点之前的操作
DatabaseMetaData接口提供了supportsSavepoints()方法,用于判断JDBC驱动是否支持保存点
Connection接口中提供了setSavepoint()方法用于在当前事务中设置保存点,如果setSavepoint()方法在事务外调用,则调用该方法后会在setSavepoint()方法调用处开启一个新的事务。setSavepoint()方法的返回值是一个Savepoint对象,该对象可作为Connection对象rollback()方法的参数,用于回滚到对应的保存点
Connection对象中提供了一个releaseSavepoint()方法,接收一个Savepoint对象作为参数,用于释放当前事务中的保存点
事务中创建的所有保存点在事务提交或完成回滚之后会自动释放,事务回滚到某一保存点后,该保存点之后创建的保存点会自动释放
参考
- MyBatis 3源码深度解析/江荣波