当前位置: 首页 > article >正文

mybatis-plus的批量修改源码遇到的问题

看了下mybatis-plus的批量修改源码,然后就理解了mybatis的一级,二级缓存
1.一级缓存是放在sqlsession中的,他里面有一个map对象,key是et字符串,value就是对象
2.每一个sqlsession都是私有的,不会共享

3.当所有对象都处理完成之后(sqlsession.update,这个时候不会操作数据库)

4.会批量提交到sqlsessionFactory中也就是二级缓存,二级缓存是所有的sqlsession共享的

5.然后从sqlsessionFactory中打开sqlsession

6.然后再吧所有的sql语句去提交事务,并且关闭sqlsession

7.下次在进来的时候,sqlsession就是新的连接了。
8.当你一条一条更新sql的时候,都需要开启关闭事务速度会很慢
9.但是mybatis-plus使用了mybatis的一级二级缓存,一次提交,所以他这里快


http://www.kler.cn/news/232994.html

相关文章:

  • Lua metatable metamethod
  • 网络游戏租用价格表,一年、1个月收费明细表
  • 按键扫描16Hz-单片机通用模板
  • Docker-CE 国内源国内镜像
  • div 2_div 3_ div 4_刷题刷题刷题
  • Linux线程 分离和同步与互斥 条件变量
  • 华为 Huawei 交换机 黑洞MAC地址的作用和配置示例
  • JMM(Java内存模型)
  • 系统架构24 - 软件架构设计(3)
  • 已解决org.springframework.aop.AopInvocationException异常的正确解决方法,亲测有效!!!
  • Python中的嵌套字典访问与操作详解
  • VR全景技术可以应用在哪些行业,VR全景技术有哪些优势
  • 无心剑汉英双语诗《龙年大吉》
  • Docker概述
  • 《MySQL 简易速速上手小册》第4章:数据安全性管理(2024 最新版)
  • LabVIEW热电偶自动校准系统
  • FastDFS安装并整合Openresty
  • 【SpringBoot】JWT令牌
  • 【正式】今年第一篇CSDN(纯技术教学)
  • python29-Python的运算符之in运算符
  • Redis实现秒杀
  • SpringCloud-Ribbon实现负载均衡
  • Linux操作系统基础(六):Linux常见命令(一)
  • Python进阶:标准库
  • PySpark(三)RDD持久化、共享变量、Spark内核制度,Spark Shuffle、Spark执行流程
  • QT学习(五)C++函数重载
  • CISCRISC? CPU架构有哪些? x86 ARM?
  • lnmp指令
  • 【5G NR】移动通讯中使用的信道编解码技术
  • 入门指南|Chat GPT 的兴起:它如何改变数字营销格局?