网站桌面图标怎么做/关键词推广和定向推广
缓存
1.概述
- Mybatis 缓存:MyBatis 内置了一个强大的事务性查询缓存机制,它可以非常方便地配置和定制
2.会话缓存(一级缓存)
-
sqlSession 级别的,也就是说,使用同一个 sqlSession 查询同一 sql 时,直接从缓存数据中取,不需要操作数据库
-
失效情况
- 同一个 sqlSession 条件不同
- 同一个 sqlSession 执行期间执行了增加、删除、修改操作
- 手动清缓存
3.二级缓存
-
使用之前必须在mapper.xml 文件中添加
-
二级缓存:是 sqlSessionFactory 级别的,只要使用同一个 sqlSessionFactory 创建的 sqlSession 查询同一 sql 都可以使用缓存
-
使用前注意:
- 先再 mapper.xml 中手动开启二级缓存
- 先再 mapper.xml 中手动开启二级缓存
-
失效情况
- 必须给类实现序列化接口(其实原理就是把对象信息写进一个序列化文件中,通过对象流)
- 两次查询之间添加了任何的增删改操作
- insert、update 和 delete 语句会刷新缓存
-
二级缓存清除策略
LRU
– (Least Recently Used)最近最少使用:移除最长时间不被使用的对象。默认使用方式FIFO
– 先进先出:按对象进入缓存的顺序来移除它们。SOFT
– 软引用:基于垃圾回收器状态和软引用规则移除对象。WEAK
– 弱引用:更积极地基于垃圾收集器状态和弱引用规则移除对象。
<cacheeviction="FIFO"flushInterval="60000"size="512"readOnly="true"/>
- flushInterval:刷新间隔,单位毫秒
- size:引用数目,默认是1024
- readOnly:只读操作默认是 false
- true,会给调用的地方返回相同实例,对象不能修改
- false:可以修改,返回实例的拷贝
4.缓存查询顺序
- 先查二级缓存,范围比较大,可能有其它会话缓存的信息
- 再查一级缓存
- 再查数据库
- 如果sqlSession关闭会把一级缓存信息缓存到二级缓存
相关文章:

Java_Mybatis_缓存
缓存 1.概述 Mybatis 缓存:MyBatis 内置了一个强大的事务性查询缓存机制,它可以非常方便地配置和定制 2.会话缓存(一级缓存) sqlSession 级别的,也就是说,使用同一个 sqlSession 查询同一 sql 时&#x…...

C#基础面试题集
C#基础 1. 简述值类型和引用类型有什么区别2. C# String类型比 stringBuilder 类型的优势是什么?3.面向对象的三大特点4.请简述private,public,protected,internal的区别5.结构体和类6.请描述Interface与抽象类之间的不同7.在类的构造函数前…...

可视化监管云平台EasyCVR宠物粮食食品厂智能视频监控方案
由于我国养宠物群体的不断膨胀,宠物市场也占据了经济的很大一部分,宠物做为人类的好朋友,可以给人们带来极高的精神抚慰,作为“毛孩子”家长,爱宠人士自然不会亏待自家宠物,都会选择最好的口粮以供宠物食用…...

ArkUI组件
目录 一、概述 声明式UI 应用模型 二、常用组件 1、Image:图片展示组件 示例 配置控制授权申请 2、Text:文本显示组件 示例 3、TextInput:文本输入组件 示例 4、Button:按钮组件 5、Slider:滑动条组件 …...

C语言--动态内存【详细解释】
一.动态内存介绍🍗 在C语言中,动态内存分配是指在程序运行时根据需要动态申请内存空间,以便在程序的不同阶段存储和使用数据。动态内存的分配与释放需要一组函数来实现,包括malloc、calloc、realloc和free。 malloc: 函数用于分配…...

施工现场安全管理系统
伴随着社会发展,各行各业都十分注重安全生产管理;建筑施工行业,由于施工环境具有复杂性、危险源较多、施工人员素质参差不齐等因素,导致安全事故时有发生;凡尔码施工安全管理系统,灵活根据施工现场管理要求…...

电线电缆行业生产管理MES系统解决方案
电线电缆行业生产管理mes系统核心功能 基础数据管理:对基础数据进行统一管理,包括组织架构、原材料数据、设备数据、报工数据、检验数据、员工数据等工艺与BOM管理:对工艺标准进行统一管理,包括工艺的版本管理、关联型号管理&…...

滑动窗口最大值和前K个高频元素
滑动窗口最大值和前K个高频元素 239. 滑动窗口最大值 核心:建立一个单调队列,维护里面的最大值,并且从大到小的顺序即可!【只需要维护有可能成为窗口里最大值的元素就可以了,同时保证队列里的元素数值是由大到小的。…...

C语言实现在顺序表中找到最大值
用C语言实现在顺序表中找到最大值: #include <stdio.h> #define MAX_SIZE 100 int findMax(int arr[], int size) { int max arr[0]; // 假设第一个元素为最大值 for (int i 1; i < size; i) { // 从第二个元素开始遍历列表 if (…...

数字工厂管理系统建设层级分为哪几层
随着工业4.0时代的到来,数字工厂已成为制造业转型升级的必经之路。数字工厂管理系统作为数字工厂的核心组成部分,对于提高生产效率、降低成本、提升质量等方面具有重要意义。数字工厂管理系统的建设层级一般分为以下几个层次,本文将对其进行详…...

MySQL 8 update语句更新数据表里边的数据
数据重新补充 这里使用alter table Bookbought.bookuser add userage INT after userphone;为用户表bookuser在userphone列后边添加一个类型为INT的新列userage。 使用alter table Bookbought.bookuser add sex varchar(6) after userage ;为用户表bookuser在userage 列后边添…...

可视化监控云平台/智能监控平台EasyCVR国标设备开启音频没有声音是什么原因?
视频云存储/安防监控EasyCVR视频汇聚平台基于云边端智能协同,支持海量视频的轻量化接入与汇聚、转码与处理、全网智能分发、视频集中存储等。GB28181视频平台EasyCVR拓展性强,视频能力丰富,具体可实现视频监控直播、视频轮播、视频录像、云存…...

L1-039:古风排版
题目描述 中国的古人写文字,是从右向左竖向排版的。本题就请你编写程序,把一段文字按古风排版。 输入格式: 输入在第一行给出一个正整数N(<100),是每一列的字符数。第二行给出一个长度不超过1000的非空字…...

树莓派新手装机指南
如果你决定买一个树莓派,那么你一定已经了解过,不需要再做多余的介绍,由于之前就玩过树莓派,还是想弄一个属于自己的树莓派,因为它就像一个微型电脑,耗电非常低,我可以在家里24小时开机…...

flink使用事件时间时警惕kafka不同分区的事件时间倾斜问题
背景 flink和kafka的消息组合消费模式几乎是实时流处理的标配,然后当在flink中使用事件时间处理时,需要注意kafka不同分区元素之间时间相差太大的问题,这样有可能会导致严重的数据堆积问题 kafka不同分区元素事件时间差异较大导致的问题 总…...

『App自动化测试之Appium基础篇』| Desired Capabilities详解与使用
App自动化测试之Appium基础篇』| Desired Capabilities详解与使用 1 关于appium driver2 安装appium driver3 安装Appium Python Client4 安装测试对象5 获取测试对象信息5.1 使用dumpsys5.2 使用AndroidKiller5.3 使用aapt 6 Capabilities详解6.1 Capabilities介绍6.2 automat…...

vscode插件webview和插件通信
如果你要在 VS Code 插件的 WebView 中调用插件中的方法,可以使用 vscode.postMessage API。具体步骤如下: 在插件中,在创建 WebView 时,指定一个 onDidReceiveMessage 回调方法,该方法会在 WebView 中调用 vscode.po…...

【STM32单片机】贪吃蛇游戏设计
文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用STM32F103C8T6单片机控制器,使用IIC OLED模块、按键等。 主要功能: 系统运行后,OLED显示游戏界面,可通过K1-K4键控制蛇的方向,当蛇吃…...

【Java 基础】32 定时调度
文章目录 Timer 类创建 Timer注意事项 ScheduledExecutorService 接口创建 ScheduledExecutorService注意事项 选择合适的定时调度方式Timer 的适用场景ScheduledExecutorService 的适用场景 总结 在软件开发中,定时任务是一种常见的需求,用于周期性地执…...

C++ 教程 - 02 复合数据类型
文章目录 数组vector字符串输入输出结构体枚举指针引用综合案例 数组 相同类型的数据的集合{ },通过索引访问元素;在内存中连续存储,属于顺序表;插入、删除时间复杂度 O ( n ) O(n) O(n),访问复杂度 O ( 1 ) O(1) O(1…...

【数据处理】NumPy数组的合并操作,如何将numpy数组进行合并?
,NumPy中的合并操作是指将两个或多个数组合并成一个数组的操作。这种操作可以通过不同的函数来实现。 一、横向合并(水平合并) 横向合并是指将两个具有相同行数的数组按列方向合并成一个数组的操作。在NumPy中,可以使用hstack()…...

JavaScript实现飘窗功能
实现飘窗功能很简单 html代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title…...

Docker笔记:容器转换成镜像,导出导入镜像,数据拷贝,查看日志
docker commit 将容器转换成镜像 可以把容器转换成镜像镜像没有写入权限,但可以通过修改容器把容器制作成新镜像启动容器后,就给容器提供了一个可写层, 在容器里,可安装软件,可创建文件 …转换成镜像,之后…...

串行计时芯片D1380/D1381,2.0V~5.5V 工作电流: 2V时 与TTL 兼容,采用DIP8、SOP8封装
D1380/D1381是一个带秒、分、时、日、日期、月、年的串行时钟保持芯片,每个月多少天以及闰年能自动调节, D1380/D1381低功耗工作方式, D1380/D1381用若干寄存器存储对应信息,一个32.768kHz 的晶振校准时钟,为了使用最小弓|脚,D1380/D1381使用…...

中间件系列 - Redis入门到实战(基础篇)
前言 1.学习视频: 黑马程序员Redis入门到实战教程,深度透析redis底层原理redis分布式锁企业解决方案黑马点评实战项目 2. 本内容仅用于个人学习笔记,如有侵扰,联系删除 3. 本章学习目标: 初始Redis 认识NoSQL认识Redi…...

项目经理和产品经理该如何选择?
最近很多人咨询“项目经理跟产品经理该怎么选,我更适合哪个?”“项目经理跟产品经理哪个更有钱途 ”“项目经理转产品经理好转吗”等等,今天就一次性说清楚项目经理跟产品经理有什么区别,应该怎么选择。 不想看长篇大论的&#x…...

java WebSocket带参数处理使用
1、webSocket实现代码 Component public class WebSocketStompConfig {//这个bean的注册,用于扫描带有ServerEndpoint的注解成为websocket// ,如果你使用外置的tomcat就不需要该配置文件Beanpublic ServerEndpointExporter serverEndpointExporter() {return new ServerEndpoi…...

OkHttp: 拦截器和事件监听器
文章目录 1. 拦截器1. 拦截器链2. 实际案例1. 注册为应用拦截器2. 注册为网络拦截器 3. 如何选择用哪种拦截器1. 应用拦截器2. 网络层拦截器3. 重写请求4. 重写响应 4. 可用性 2. 事件监听器1. 请求的生命周期2. EventListener使用案例3. EventListener.Factory4. 调用失败的请…...

总结一些vue3小知识2
1.el-tree-select和el-tree组件报错(有的下拉选项选择不了,一点击就报错,但是有的却能选择,不会报错) 原因:就如同v-for一样,需要添加key才不会出现渲染错误,而el-tree-select和el-tree组件需要…...

【Excel设置动态图表】
设置系列,设置水平轴标签。 效果如图: 经验总结: 方法1:如果设置A、B列为水平轴标签,目前无法设置只是日期为横轴,店铺名称只在最下面显示一个,只能并排1列显示。 优点:如果多选…...