java重点学习-mybatis

news2024/9/21 4:36:37

4.1 MyBatis执行流程

  • ① 读取MyBatis配置文件:mybatis-config.xml加载运行环境和映射文件
  • ② 构造会话工厂SqlSessionFactory
  • ③ 会话工厂创建SqlSession对象(包含了执行SQL语句的所有方法)
  • ④ 操作数据库的接口,Executor执行器,同时负责查询缓存的维护
  • Executor接口的执行方法中有一个MappedStatement类型的参数,封装了映射信息
  • ⑥ 输入参数映射
  • ⑦ 输出结果映射

4.2 Mybatis是否支持延迟加载,和延迟加载的原理

4.3 Mybatis的一级、二级缓存用过吗?

  • 一级缓存:基于 PerpetualCache 的 HashMap 本地缓存,其存储作用域为 Session,当Session进行flush或close之后,该Session中的所有Cache就将清空,默认打开一级缓存

  • 二级缓存是基于namespace和mapper的作用域起作用的,不是依赖于SQL session,默认也是采用PerpetualCache,HashMap 存储。需要单独开启,一个是核心配置,一个是mapper映射文件
  • 二级缓存需要缓存的数据实现Serializable接口
  • 只有会话提交或者关闭以后,一级缓存中的数据才会转移到二级缓存中

4.4 Mybatis的二级缓存什么时候会清理缓存中的数据

当某一个作用域(一级缓存 Session/二级缓存Namespaces)的进行了新增、修改、删除操作后,默认该作用域下所有 select 中的缓存将被 clear

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2107615.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

人、货、场巨变,5G人工智能时代新的创业机会在哪?

随着5G元年的开启,人工智能的潜力被进一步激发,"人工智能"广泛应用于教育、无人驾驶、金融、银行、医疗、工业等领域,成为中国新的经济增长引擎,促进中国经济火爆增长。不仅促进了中国消费者的购买力,更萌发…

亚马逊卖家测评为什么要自己养账号呢?不懂快进来看看

亚马逊上的卖家为啥要自己养账号呢?咱们来聊聊这个事儿。 亚马逊特别看重用户的体验,所以买家的评论和打分对店铺的排名影响很大。平台对评论的审核很严格,这些评论直接关系到商品在平台上的表现和销量。 在亚马逊上,买家的评分和…

汽车制造商设备运维案例

汽车产线有很多传动设备需要长期在线运行,会出现老化、疲劳、磨损等问题,为了避免意外停机造成损失,需要加装一些健康监测设备,监测设备运行状态。天津三石峰科技采用无线温振传感器汇聚网关方案,将现场设备数据数据上…

springboot项目实现分库

本文是根据仓库编码 和 仓库id进行按仓库进行分库处理,可以根据例子自行按照业务需要进行分库 1.核心是实现 Spring 的 AbstractRoutingDataSource 抽象类,重写 determineCurrentLookupKey 方法,实现动态数据源的目的 @Slf4j public class DynamicDataSource extends Abst…

佳明运动相机SD存储卡被格式化?教你有效恢复数据的方法

在日常使用佳明运动相机的过程中,‌我们可能会不小心将SD存储卡格式化,‌导致珍贵的照片和视频数据丢失。‌面对这种情况,‌很多用户都感到十分焦虑和无助。‌但幸运的是,‌通过一些有效的方法,‌我们仍然有可能恢复这…

如何在Centos7构建调试“Jmeter-InfluxDB-Grafana“?

一、数据源配置 1、在"Grafana"首页,添加数据源 2、点击添加 3、选择"InfluxDB" 4、填写主机 5、填写"Database:jmeter"和"HTTP Method:GET" 6、点击"Save & test" 7、查看 二、配置…

串口与Labview通讯的调试

在学习Labview和串口的通讯和调试的时候。首先必须先了解一些Labview的基础知识,然后就是了解串口,在调试的过程中,我们需要下位机来辅助我们的程序编写与调试,也就是我们平时使用的单片机,如果没有单片机也不要紧&…

不会抖音剪辑怎么办?这4款拿走不谢

不少人想做自媒体,但是就光视频剪辑这一点难住了不少人,其实视频剪辑并没有大家想的那么复杂,直接用一些简单的剪辑视频工具也可以处理。作为一个短视频剪辑新手,我最近尝试了几款流行的视频编辑软件,今天就来和大家分…

Docker(完整实验版)

目录 一 Docker 1.1 Docker简介 1.1.1 什么是docker? 1.1.2 docker在企业中的应用场景 1.1.3 docker与虚拟化的对比 1.1.4 docker的优势 1.2 部署docker 1.2.1 配置软件仓库 二 Docker的基本操作 2.1 Docker镜像管理 2.1.1 搜索镜像 2.1.2 拉取镜像 2…

【串的相关概念】

1.前情回顾: 2.串的定义 注意这里的字符是任意字符:包括特殊字符和空格 2.1串的相关术语 2.2分析如下: 子串与主串 可以类比 子集与集合的关系 且空串也是子串的一种 注意空格串与空串的区别 位置是从1开始设定的(第一个位置开始…

【java入门】关键字、标识符与变量初识

🚀 个人简介:某大型国企资深软件开发工程师,信息系统项目管理师、CSDN优质创作者、阿里云专家博主,华为云云享专家,分享前端后端相关技术与工作常见问题~ 💟 作 者:码喽的自我修养&#x1f9…

Java 入门指南:Java 并发编程 —— 并发容器 PriorityBlockingQueue

BlockingQueue BlockingQueue 是Java并发包(java.util.concurrent)中提供的一个阻塞队列接口,它继承自 Queue 接口。 BlockingQueue 中的元素采用 FIFO 的原则,支持多线程环境并发访问,提供了阻塞读取和写入的操作&a…

「C++」类和对象(2)

欢迎大家来到小鸥的类和对象第二篇博客~ 目录 类的默认成员函数 构造函数 构造函数的特点: 析构函数 析构函数的特点: 拷贝构造函数 拷贝构造的特点: 结语: 本篇会着重讲解类和对象中的难点:类的默认成员函数 …

Ubuntu环境的MySql下载安装

下载压缩包 此文章下载的mysql版本位5.7.29 sudo wget https://downloads.mysql.com/archives/get/p/23/file/mysql-server_5.7.29-1ubuntu18.04_amd64.deb-bundle.tar解压缩 sudo tar -xvf mysql-server_5.7.29-1ubuntu18.04_amd64.deb-bundle.tar命令解释 -x:…

鸿蒙Next-拉起支付宝的三种方式——教程

鸿蒙Next-拉起支付宝的三种方式——教程 鸿蒙Next系统即将上线,应用市场逐渐丰富、很多APP都准备接入支付宝做支付功能,目前来说有三种方式拉起支付宝:通过支付宝SDK拉起、使用OpenLink拉起、传入支付宝包名使用startAbility拉起。以上的三种…

走心机做不锈钢哪个牌子好

不锈钢是现代生活中不可或缺的材料,它广泛应用于厨房用具、家具、建筑等领域。在市场上,有许多不锈钢需要加工零件供消费者选择,那么在选择不锈钢加工零件时制品时,应该如何选择数控走心机,找到最好的品牌呢&#xff1…

CodeSys中动态切换3D模型

文章目录 需求研究结果 需求 在前面的【CodeSys开发3d机械臂显示控件】中,我们已经实现了一个可以显示3d模型的控件。但是这个控件是和使用的3d模型绑定死的,在安装这个控件时就已经将模型文件于控件一起安装到codesys中。 假如我想在不同的工程中&…

Numpy中type()、ndim、shape、size、dtype、astype的用法

目录 numpy基础介绍示例分析及总结:itemsize、nbytes函数 numpy基础介绍 Numpy 补充了Python语言所欠缺的数值计算能力,是其它数据分析及机器学习库的底层库。因其完全标准C语言实现,运行效率充分优化。最重要一点是开源免费。numpy的核心是矩阵&#x…

思维导图怎么画好看又简单?5个软件帮助你快速进行思维导图绘制

思维导图怎么画好看又简单?5个软件帮助你快速进行思维导图绘制 思维导图是一种有效的思维整理和展示工具,可以帮助你将复杂的想法进行可视化,提升工作和学习效率。为了让思维导图既好看又简单,选择合适的软件能够大大提高绘制效率…