当前位置 : 主页 > 编程语言 > c++ >

Mybatis事务机制

来源:互联网 收集:自由互联 发布时间:2021-07-03
gistfile1.txt 数据库的四个特性:原子性、持久性、独立性、一致性。原子性:事务是应用中不可再分的最小逻辑执行体。持久性:事务一旦提交,对数据所做的改变要记录到永久存储器
gistfile1.txt
数据库的四个特性:原子性、持久性、独立性、一致性。
原子性:事务是应用中不可再分的最小逻辑执行体。
持久性:事务一旦提交,对数据所做的改变要记录到永久存储器中。
独立性:事务之间互不干扰。
一致性:比如账户转账要一致性。确保双方账户都进行了修改。

Mybatis事务是通过transation接口,对于事务来说,应该是创建、提交、回滚、关闭。Mybatis事务分为两种,分别为
JDBC的事务管理,另一种是MANAGED,这是通过容器去管理。

Mybatis缓存机制:
分为一级缓存和二级缓存,一级缓存是SqlSession级别的,二级缓存是mapper级别的,二级缓存是多个SqlSession共享的。

一级缓存:
作用域为SqlSession,在同一个SqlSession中执行两次SQL语句时,第一次会写入缓存中,第二次直接从缓存中获取,而不
是从底层中获取。但是如果执行了插入、更新、删除,那么缓存中就会被清空,目的为保证最新数据。默认开启一级缓存。

二级缓存(mapper级别):
二级缓存中多个SqlSession共同使用一个mapper的sql语句去操作,范围更大。二级缓存默认没有开启,需要在mybatis.xml
配置setting,如下:

之后在映射文件去引用cache元素,如下:
网友评论