目录


ehcache

ehcache 是一个分布式缓存框架 !

  1. 为什么需要分布式缓存?

    在大型的项目中,服务器是肯定不止一台的,每台服务器都有自己的缓存,那么当用户去 A服务器 查询一个数据以后,A服务器 将其 缓存 到内存中,然后如果地址跳准到 B服务器这时候,如果再次需要之前查询的数据,我们还必须再次查询数据库,因为缓存在 A服务器 上,不在 B服务器 上 ;

    我们很容易发现,这样很不好,存在 资源的浪费,多台服务器需要缓存多份相同的数据

    我们应该将 缓存数据 集中起来进行保管,这样,无论哪一台服务器,都让其来我这里查询缓存;

    如何集中,就需要使用第三方的分布式缓存框架了 ,这里选用 ehcache


mybatis 的 Cache 接口

虽然 mybatis 有自己的缓存策略,但是,实质上它的缓存策略,不是很好,因为他直接在内存中进行数据的缓存;

我们是可以自己提供 Cache 接口的 实现类,然后配置,来替换掉 mybatis 的默认实现的 ;

不过,一般不用我们自己写,mybatis 和谁进行整合,谁一般都会有实现类 ;


整合步骤

  1. 引入 ehcache

    下载完事后, 将 mybatis-ehcache-1.1.0.jarehcache-core-2.6.11.jar 两个包引入工程 ;

    其中 ehcache 是依赖于 slf4j 日志包的,但是一般 mybatis 使用的时候,都导入了这个包 ;

  2. 引入 ehcache 配置文件

    放置路径无所谓,可以放在任意包下面, ehcache.xml ,我发现我没有配置文件,它也没报错;

  3. 在 映射关系 中配置 Cache 接口的实现类

    <!--开启二级缓存-->
    <!--type 指定 cache 接口的实现类,mybatis的默认实现类是 PerpetualCache-->
    <!--要和 ehcache 整合,我们需要将 type 改为,ehcache的实现类-->
    <cache type="org.mybatis.caches.ehcache.EhcacheCache"/>

(十三)mybatis 整合 ehcache的更多相关文章

  1. java-mybaits-00602-查询缓存-mybatis整合ehcache

    ehcache是一个分布式缓存框架.EhCache 是一个纯Java的进程内缓存框架,是一种广泛使用的开源Java分布式缓存,具有快速.精干等特点,是Hibernate中默认的CacheProvide ...

  2. mybatis整合ehcache

    知识点:mybatis整合encache缓存框架,缓存从数据库中,查询的数据,不使用mybatis自带的二级缓存 补充:github上Mybatis Ehcache 适配器包说明地址:http://w ...

  3. mybatis的缓存机制(一级缓存二级缓存和刷新缓存)和mybatis整合ehcache

    1.1  什么是查询缓存 mybatis提供查询缓存,用于减轻数据压力,提高数据库性能. mybaits提供一级缓存,和二级缓存. 一级缓存是SqlSession级别的缓存.在操作数据库时需要构造 s ...

  4. [原创]mybatis中整合ehcache缓存框架的使用

    mybatis整合ehcache缓存框架的使用 mybaits的二级缓存是mapper范围级别,除了在SqlMapConfig.xml设置二级缓存的总开关,还要在具体的mapper.xml中开启二级缓 ...

  5. 7.4mybatis整合ehcache(mybatis无法实现分布式缓存必须和其他缓存框架整合)

    <\mybatis\day02\14查询缓存-二级缓存-整合ehcache.av> mybatis的缓存机制(一级缓存二级缓存和刷新缓存)和mybatis整合ehcache-- 这里有做本 ...

  6. mybatis中整合ehcache缓存框架的使用

    mybatis整合ehcache缓存框架的使用 mybaits的二级缓存是mapper范围级别,除了在SqlMapConfig.xml设置二级缓存的总开关,还要在具体的mapper.xml中开启二级缓 ...

  7. Mybatis整合(Redis、Ehcache)实现二级缓存

    目的: Mybatis整合Ehcache实现二级缓存 Mybatis整合Redis实现二级缓存 Mybatis整合ehcache实现二级缓存 ssm中整合ehcache 在POM中导入相关依赖 < ...

  8. mybatis0210 mybatis和ehcache缓存框架整合

    .1mybatis和ehcache缓存框架整合 一般不用mybatis来管理缓存而是用其他缓存框架在管理缓存,因为其他缓存框架管理缓存会更加高效,因为别人专业做缓存的而mybatis专业做sql语句的 ...

  9. mybatis 与 ehcache 整合[转]

    1.简介 MyBatis 是支持普通SQL 查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除了几乎所有的JDBC 代码和参数的手工设置以及结果集的检索. Ehcache 是现在最流行的纯 ...

随机推荐

  1. 2019.7.9 校内测试 T2 极值问题

    这一次是交流测试?边交流边测试(滑稽 极值问题 乍一看这是一道数学题,因为1e9的数据让我暴力的心退却. 数学又不好,不会化简式子嘞,咋办? 不怕,咱会打表找规律.(考场上真的是打表找出了规律,打表打 ...

  2. Liunx之MySQL安装与主从复制

    MYSQL安装(mariadb) MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可. 开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL ...

  3. 互联网IT当线上出现 bug 时,是怎么处理的?

    线上BUG说处理方法:1.关于线上BUG问题,目前公司有一整套线上故障流程规范,包括故障定义.定级.处理流程.故障处理超时升级机制.故障处理小组.故障处罚(与故障存在时长有关)等:2.最主要的是,线上 ...

  4. 电路IO驱动能力

    驱动能力 电源驱动能力 -> 输出电流能力 -> 输出电阻 指输出电流的能力,比如芯片的IO在高电平时的最大输出电流是4mA -> 该IO口的驱动驱动能力为4mA 负载过大(小电阻) ...

  5. HearthBuddy 召唤随从的问题

    代码如下,在SilverFish\SilverFish\ai\Playfield.cs文件中 public void callKid(CardDB.Card c, int zonepos, bool ...

  6. 淘宝rem适配方案

    /*px 转化换 rem ,转化是 10 .比如:你的设计图为750,那么就 750 / 75 = 10 rem.设计图中你量尺寸都要除 75 就是 rem值.再比如量的设计图按钮宽度 66px,那么 ...

  7. Mac OS xshell xftp 替代工具-finalshell

    安装步骤: 1,打开Mac 终端: 2,输入: curl -L -o finalshell_install.sh www.hostbuf.com/downloads/finalshell_instal ...

  8. export default {} 和new Vue()区别?

    export default 的用法:相当于提供一个接口给外界,让其他文件通过 import 来引入使用. 而对于 new Vue({})部分, 只是创建一个Vue的实例 就是相当于创建一个根组件 h ...

  9. Flask-Login详解

    Flask-Login详解 关于Flask登录认证的详细过程请参见拙作<<使用Flask实现用户登陆认证的详细过程>>一文,而本文则偏重于详细介绍Flask-Login的原理, ...

  10. 002-多线程-JUC集合-List-CopyOnWriteArrayList

    一.概述 CopyOnWriteArrayList是Java并发包中提供的一个并发容器,它是个线程安全且读操作无锁的ArrayList,写操作则通过创建底层数组的新副本来实现,是一种读写分离的并发策略 ...