首页 > 其他分享 >mybatis的一级、二级缓存

mybatis的一级、二级缓存

时间:2023-12-25 20:00:36浏览次数:22  
标签:缓存 一级 作用域 默认 二级缓存 Session mybatis

Mybatis的一级、二级缓存

一级缓存:基于 PerpetualCache的HashMap本地缓存,其存储作用域为Session,当Session进行flush或 close之后,该Session中的所有Cache就将清空,默认打开一级缓存
二级缓存是基于namespace和mapper的作用域起作用的,不是依赖于SQLsession,默认也是采用 PerpetualCache,HashMap存储。需要单独开启,一个是核心配置,一个是mapper映射文件

 

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

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

标签:缓存,一级,作用域,默认,二级缓存,Session,mybatis
From: https://www.cnblogs.com/javatk/p/17926870.html

相关文章

  • MyBatis batchInsert 批量插入数据
    mybatis是一个Java的持久层框架,它支持定制化SQL、存储过程以及高级映射。通过MyBatis,开发者可以直接编写原生态SQL,避免了JDBC代码的繁琐。如何在MyBatis中进行批量插入操作。下面是一个简单的例子,说明如何在MyBatis中配置和使用批量插入:Mapper接口:publicinter......
  • 工作上使用mybatisplus时遇到的问题
    报错:org.apache.ibatis.session.Configuration.getLanguageDriver(Ljava/lang/Class;)原因:依赖低版本导致了了冲突,我们改为高版本即可思路1.根据引起问题的提示中的“org.apache.ibatis.session.Configuration.getLanguageDriver”,看看能否找到对应的类,如下所示:(shitf双击然后查......
  • MyBatisPlus简介及快速搭建
    一、简介MyBatisPlus(简称MP)是一个MyBatis的增强工具,在MyBatis的基础上只做增强,不做改变,为简化开发,提高效率而生。特性及官网链接(简称苞米豆):可在IDEA中安装以下插件:MybatisX:支持跳转,自动补全生成SQL;dynamic-datasource:基于SpringBoot的多数据源组件,功能强悍,支持Seat......
  • org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis
    Requestprocessingfailed;nestedexceptionisorg.mybatis.spring.MyBatisSystemException:nestedexceptionisorg.apache.ibatis.binding.BindingException:Parameter'keyWord'notfound.Availableparametersare[keyword,param1] 错误原因:我在mapper里加......
  • mybatis实现多对一和一对多
    1、多对一实现概述:多个学生对应一个老师1.1按照查询嵌套查询学生实体类@DatapublicclassUserimplementsSerializable{privatestaticfinallongserialVersionUID=1L;@TableIdprivateLongid;/**用户名称*/privateStringusername......
  • mybatis与mybatisplus
    使用这个不会造成冲突 同时不要把<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>3.0.3</version></dependency>删除<dependency><grou......
  • mybatis错误:Parameter 'companyName' not found. Available parameters are [arg3, ar
    问题:mybatis.binding.BindingException:Parameter'companyName’notfound.Availableparametersare[arg3,arg2解决:原因是DAO层传入参数mapper无法识别,只需要在在DAO中的方法中前加入@Param(“xxx”)即可,在mapper.xml中使用xxx作为传参.intselectBy4Params(Stringco......
  • mybatis-plus 逻辑删除时报错
    报错原因sql语句查询时出现关键字导致报错1、数据库中字段名称2、实体类中字段名称3、yml中配置4、执行查询5、MySQL中执行查询5、解决方法在实体中不要把MySQL的关键字作为实体名字,改个即可。如果在实体中命名与MySQL关键字冲突,也可以使用``号实现......
  • MyBatis-Plus 可视化代码生成器
    MyBatis-Plus可视化代码生成器来啦,让你的开发效率大大提速!!来源:blog.csdn.net/yelangkingwuzuhu/article/details/128077533前言一、mybatis-plus-generator-ui是什么?二、mybatis-plus-generator-ui怎么用?1、mavenpom引入2、新建程序入口,以main函数的方式运行3、......
  • 【SpringBootWeb入门-17】Mybatis-基础操作-动态SQL
    1、章节回顾上一篇文章我们讲解完了Mybatis基础操作,本篇继续学习Mybatis中非常重要的功能:动态SQL。什么是动态SQL:随着用户的输入或外部条件的变化而变化的SQL语句,我们称为动态SQL。简单说SQL语句不是固定的,是动态变化的。就拿我们上一篇所提到的根据条件来查询员工的SQL语句来......