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分布式缓存通用缓存,JavaEE中的一个轻量级的容器。

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

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

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

接着需要在mapper的xml文件中配置如下内容:

<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"
/>

<!--

name:Cache的唯一标识

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

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

eternal:Element是否永久有效,一但设置了,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文件中的内容如下:

时间: 2024-12-28 01:38:04

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

02_MyBatis项目结构,所需jar包,ehcache.xml配置,log4j.properties,sqlMapConfig.xml配置,SqlMapGenerator.xml配置

 项目结构(所需jar包,配置文件) sqlMapConfig.xml的配置内容如下: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> &l

SSH框架整合所需jar包及文件配置

Hibernate 版本:hibernate-release-4.3.8.Final 核心jar包:\lib\required antlr-2.7.7 dom4j-1.6.1 hibernate-commons-annotations-4.0.5.Final hibernate-core-4.3.8.Final hibernate-jpa-2.1-api-1.0.0.Final jandex-1.1.0.Final javassist-3.18.1-GA jboss-logging-3.1.3.

条理清晰的搭建SSH环境之添加所需jar包

一.首先介绍要添加框架环境: JUnit Struts2 Hibernate Spring (1)配置JUnit /**-------------------------添加JUnit-------------------------------*/ 右击Web项目--->Build Path--->Add Libraries--->在"Add Libraries窗口选择Junit"--- --->Next--->选择版本JUnit 4 /**------

SSH框架整合配置所需JAR包(SSH整合)

Hibernate Jar: 1.hibernate3.jar,这个是hibernate3.0的核心jar包,没的选,像我们常用的Session,Query,Transaction都位于这个jar文件中,必要. 2.cglib-2.1.3.jar,CGLIB库,Hibernate用它来实现PO字节码的动态生成,非常核心的库,必要. 3.asm.jar ASM字节码库 如果使用"cglib"则必要,必要 4.asm-attrs.jar ASM字节码库 如果使用"cglib&qu

[Java]struts2+spring3+hibernate3所需 jar包

1.struts2提取包从struts2-2.2.1-lib.zip中struts-2.2.1\lib提取如下包aopalliance-1.0.jarcommons-collections-3.2.jarcommons-fileupload-1.2.1.jarcommons-io-1.3.2.jarcommons-logging-1.0.4.jarfreemarker-2.3.16.jarognl-3.0.jarstruts2-core-2.2.1.jarstruts2-spring-plugi

搭建SSH环境之添加所需jar包

一.首先介绍要添加框架环境: JUnit Struts2 Hibernate Spring (1)配置JUnit /**-------------------------添加JUnit-------------------------------*/ 右击Web项目--->Build Path--->Add Libraries--->在“Add Libraries窗口选择Junit”--- --->Next--->选择版本JUnit 4 /**----------------

Eclipse中执行Hbase所需jar包

Eclipse中执行Hbase程序需要导入的jar包如下: 1 Hadoop全部jar包 2 Hbase部分jar包 Hbasejar包不能多也不能少,多了会冲突,少了会提醒找不到相应类,Hbase这些jar包整理了一下如下图所示:

IDEA加密算法(含所需jar包(commons-codec-1.11.jar ,bcprov-jdk15on-160.jar))

软件设计上机实验IDEA算法: 1 import javax.crypto.Cipher; 2 import javax.crypto.KeyGenerator; 3 import javax.crypto.SecretKey; 4 import org.apache.commons.codec.binary.Base64; 5 import org.bouncycastle.jce.provider.BouncyCastleProvider; 6 7 8 9 import javax.cryp

Java读取其他jar包里的配置文件

最近要做个东西,需要自己控制数据库的事物,项目封装的框架,实在是提不起去阅读的兴趣, 就想直接去读框架的底层实现里面的数据连接的配置文件(如:Url,port,username,password等), 使用JDBC创建数据连接,拿到Connection后,事物就好办了. 找到在一个A.jar包里面的根目录,有配置文件B.properties,里面有需要的配置. 难点就来了,Properties可以加载src下面的properties文件,直接prop.load(this.getClass().g