01_MyBatis EHCache集成及所需jar包,ehcache.xml配置文件参数配置及mapper中的参数配置

简介:  1 与mybatis集成时需要的jar ehcache-core-2.6.5.jar mybatis-ehcache-1.0.2.jar Mybatis、日志、EHCache所需要的jar包如下: 2 EHCache与mybatis集成 EHCache是一种广泛使用java分布式缓存通用缓存,Ja


1 mybatis集成时需要的jar

ehcache-core-2.6.5.jar

mybatis-ehcache-1.0.2.jar

Mybatis、日志、EHCache所需要的jar包如下:

2 EHCachemybatis集成

EHCache是一种广泛使用java分布式缓存通用缓存,JavaEE中的一个轻量级的容器。

EHCache集成是基于ehcache-core,没有任何其它第三方应用程序。

想使用EHCache到她们的应用程序的用户,必须下载EHCachezip bundle,解压它添加这些jarsclasspath路径下。使用Apache Maven的用户只需要在pom.xml文件中添加如下内容:

<dependencies>
  ...
  <dependency>
    <groupId>org.mybatis.caches</groupId>
    <artifactId>mybatis-ehcache</artifactId>
    <version>1.0.2</version>
  </dependency>
  ...
</dependencies>

接着需要在mapperxml文件中配置如下内容:

<mapper namespace="org.acme.FooMapper">

<cache type="org.mybatis.caches.ehcache.EhcacheCache"/>...

</mapper>

你也可以提供可以再运行动态变更的如下参数:

<mapper namespace="org.acme.FooMapper">

    <cache type="org.mybatis.caches.ehcache.EhcacheCache"/>

    <property name="timeToIdleSeconds" value="3600"/><!--1hour-->

    <property name="timeToLiveSeconds" value="3600"/><!--1hour-->

    <property name="maxEntriesLocalHeap" value="1000"/>

    <property name="maxEntriesLocalDisk" value="10000000"/>

    <property name="memoryStoreEvictionPolicy" value="LRU"/>

  </cache>

  ...

</mapper>

如果用户需要日志缓存操作,可以插入Cachelogging version:

<mapper namespace="org.acme.FooMapper">

  <cache type="org.mybatis.caches.ehcache.LoggingEhcache"/>

  ...

</mapper>

    需要通xml配置文件配置EHCache的用户,必须要在classpath路径下放置/ehcache.xml资源。

/ehcache.xml资源没有发现或者在加载/ehcache.xml的时候发生错误,将会使用默认的配置。

3 /ehcache.xml配置文件参数配置

<?xml version="1.0" encoding="UTF-8"?>

<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

   xsi:noNamespaceSchemaLocation="ehcache.xsd"

   updateCheck="true" monitoring="autodetect" dynamicConfig="true">

 

   <diskStore path="java.io.tmpdir" />

  

   <!-- 

    nameCache的唯一标识

    maxElementsInMemory:内存中最大缓存对象数

    maxElementsOnDisk:磁盘中最大缓存对象数,若是0表示无穷大

    eternalElement是否永久有效,一但设置了,timeout将不起作用

    overflowToDisk:配置此属性,当内存中Element数量达到maxElementsInMemory时,Ehcache将会Element写到磁盘中

    timeToIdleSeconds:设置Element在失效前的允许闲置时间。仅当element不是永久有效时使用,可选属性,默认值是0,也就是可闲置时间无穷大

    timeToLiveSeconds:设置Element在失效前允许存活时间。最大时间介于创建时间

        和失效时间之间。仅当element不是永久有效时使用,默认是0.,也就是element存活时间无穷大 

    diskPersistent:是否缓存虚拟机重启期数据 

    diskExpiryThreadIntervalSeconds:磁盘失效线程运行时间间隔,默认是120

    diskSpoolBufferSizeMB:这个参数设置DiskStore(磁盘缓存)的缓存区大小。默认是30MB。每个Cache都应该有自己的一个缓冲区

    memoryStoreEvictionPolicy:当达到maxElementsInMemory限制时,Ehcache将会根据指定的策略去清理内存。默认策略是LRU(最近最少使用)。你可以设置为FIFO(先进先出)或是LFU(较少使用) 

    -->

   <defaultCache maxElementsInMemory="10000"

      eternal="false"

      timeToIdleSeconds="120"

      timeToLiveSeconds="120"

      overflowToDisk="true"

      maxElementsOnDisk="10000000"

      diskPersistent="false"

      diskExpiryThreadIntervalSeconds="120"

      memoryStoreEvictionPolicy="LRU" />

</ehcache>

sqlMapConfig.xml中的<settings>设置如下:

<!-- 开启延迟加载 -->

<settings>

   <!-- 全局的延迟加载的开关必须要开启 -->

   <setting name="lazyLoadingEnabled" value="true"/>

   <!-- 积极加载设置成false -->

   <setting name="aggressiveLazyLoading" value="false"/>

   <!-- 开启二级缓存, 缓存中只要是需要配置的针对的都是二级缓存 -->

   <setting name="cacheEnabled" value="true"/>

</settings>

    mapper文件中的内容如下:

目录
相关文章
|
2月前
|
Java Spring
Spring boot 运行服务jar外配置配置文件方式总结
Spring boot 运行服务jar外配置配置文件方式总结
321 0
|
7天前
|
SQL XML Java
mybatis :sqlmapconfig.xml配置 ++++Mapper XML 文件(sql/insert/delete/update/select)(增删改查)用法
当然,这些仅是MyBatis功能的初步介绍。MyBatis还提供了高级特性,如动态SQL、类型处理器、插件等,可以进一步提供对数据库交互的强大支持和灵活性。希望上述内容对您理解MyBatis的基本操作有所帮助。在实际使用中,您可能还需要根据具体的业务要求调整和优化SQL语句和配置。
14 1
|
2月前
|
存储 缓存 分布式计算
Hadoop配置文件core-site.xml
【7月更文挑战第17天】
33 2
Hadoop配置文件core-site.xml
|
19天前
|
分布式计算 DataWorks Java
DataWorks产品使用合集之如何引用在spark jar中引用密文的空间参数
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
2月前
|
XML 分布式计算 资源调度
Hadoop配置文件mapred-site.xml
【7月更文挑战第18天】
51 7
|
25天前
logback.xml 配置文件
logback.xml 配置文件
11 0
|
2月前
|
存储 机器学习/深度学习 分布式计算
Hadoop配置文件hdfs-site.xml
【7月更文挑战第17天】
53 5
|
2月前
|
Java 数据库连接 mybatis
Mybatis查询传递单个参数和传递多个参数用法
Mybatis查询传递单个参数和传递多个参数用法
44 11
|
2月前
|
分布式计算 资源调度 Hadoop
Hadoop配置文件yarn-site.xml
【7月更文挑战第18天】
64 3
|
27天前
|
SQL Java 数据库连接
MyBatis Mapper.XML 标签使用说明
MyBatis Mapper.XML 标签使用说明
24 0
下一篇
DDNS