下面介绍一下简单使用的配置过程:ehcache.jar及spring相关jar就不说了,加到项目中就是了。

简单的使用真的很简单。但只能做为入门级了。

1.ehcache.xml,可放classpath根目录下,

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

<defaultCache

            maxElementsInMemory="10000"

            eternal="false"

            timeToIdleSeconds="120"

            timeToLiveSeconds="120"

            overflowToDisk="true"

            diskSpoolBufferSizeMB="30"

            maxElementsOnDisk="10000000"

            diskPersistent="false"

            diskExpiryThreadIntervalSeconds="120"

            memoryStoreEvictionPolicy="LRU"

          

            />

    <cache name="DEFAULT_CACHE"

            maxElementsInMemory="10000"

            eternal="false"

            timeToIdleSeconds="120"

            timeToLiveSeconds="120"

            overflowToDisk="true"

            diskSpoolBufferSizeMB="30"

            maxElementsOnDisk="10000000"

            diskPersistent="false"

            diskExpiryThreadIntervalSeconds="120"

            memoryStoreEvictionPolicy="LRU"

           

            />    

</ehcache>

<!--  

1.必须要有的属性:  

name: cache的名字,用来识别不同的cache,必须惟一。  

maxElementsInMemory: 内存管理的缓存元素数量最大限值。  

maxElementsOnDisk: 硬盘管理的缓存元素数量最大限值。默认值为0,就是没有限制。  

eternal: 设定元素是否持久话。若设为true,则缓存元素不会过期。  

overflowToDisk: 设定是否在内存填满的时候把数据转到磁盘上。  

2.下面是一些可选属性:  

timeToIdleSeconds: 设定元素在过期前空闲状态的时间,只对非持久性缓存对象有效。默认值为0,值为0意味着元素可以闲置至无限长时间。  

timeToLiveSeconds: 设定元素从创建到过期的时间。其他与timeToIdleSeconds类似。  

diskPersistent: 设定在虚拟机重启时是否进行磁盘存储,默认为false.(我的直觉,对于安全小型应用,宜设为true)。  

diskExpiryThreadIntervalSeconds: 访问磁盘线程活动时间。  

diskSpoolBufferSizeMB: 存入磁盘时的缓冲区大小,默认30MB,每个缓存都有自己的缓冲区。  

memoryStoreEvictionPolicy: 元素逐出缓存规则。共有三种,Recently Used
(LRU)最近最少使用,为默认。 First In First Out (FIFO),先进先出。Less Frequently
Used(specified as LFU)最少使用 

-->

2.第二步,配置applicationContext-ehcache.xml,与spring整合文件

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

<beans xmlns="http://www.springframework.org/schema/beans" 

     xmlns:context="http://www.springframework.org/schema/context" 

     xmlns:p="http://www.springframework.org/schema/p" 

     xmlns:mvc="http://www.springframework.org/schema/mvc" 

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

     xmlns:aop="http://www.springframework.org/schema/aop" 

     xmlns:tx="http://www.springframework.org/schema/tx" 

     xsi:schemaLocation="http://www.springframework.org/schema/beans 

          http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 

          http://www.springframework.org/schema/context 

          http://www.springframework.org/schema/context/spring-context.xsd 

          http://www.springframework.org/schema/tx  

          http://www.springframework.org/schema/tx/spring-tx-3.0.xsd 

          http://www.springframework.org/schema/aop 

          http://www.springframework.org/schema/aop/spring-aop-3.0.xsd 

          http://www.springframework.org/schema/mvc 

          http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"

          default-autowire="byName" default-lazy-init="false"> 

        <!-- 引用ehCache的配置 -->    

        <bean id="defaultCacheManager" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">    

          <property name="configLocation">    

            <value>classpath:ehcache.xml</value>    

         </property>    

        </bean> 

         

          <!-- 定义ehCache的工厂,并设置所使用的Cache name -->    

        <bean id="ehCache" class="org.springframework.cache.ehcache.EhCacheFactoryBean">    

          <property name="cacheManager">    

            <ref local="defaultCacheManager"/>    

          </property>    

          <property name="cacheName">    

              <value>DEFAULT_CACHE</value>    

          </property>    

        </bean>           

    </beans>

实际上这样就把两者结合起来了。当然集群的话还得另外配置,这里只讲最简单的。

下面使用:

3.  添加数据到缓存:

net.sf.ehcache.Cache ehCache=ApplicationContextUtils.getBean("ehCache");

net.sf.ehcache.Element lgEle=new net.sf.ehcache.Element("loginName", users.getLoginName());

net.sf.ehcache.Element pwdEle=new net.sf.ehcache.Element("password", users.getPassword());

ehCache.put(lgEle);

ehCache.put(pwdEle);

这样使用就可。

Ehcache整合spring的更多相关文章

  1. Ehcache 整合Spring 使用页面、对象缓存

    Ehcache 整合Spring 使用页面.对象缓存 Ehcache在很多项目中都出现过,用法也比较简单.一 般的加些配置就可以了,而且Ehcache可以对页面.对象.数据进行缓存,同时支持集群/分布 ...

  2. ehcache整合spring本地接口方式

    一.简介 ehcache整合spring,可以通过使用echache的本地接口,从而达到定制的目的.在方法中根据业务逻辑进行判断,从缓存中获取数据或将数据保存到缓存.这样让程序变得更加灵活. 本例子使 ...

  3. Ehcache学习总结(3)--Ehcache 整合Spring 使用页面、对象缓存

    Ehcache 整合Spring 使用页面.对象缓存 Ehcache在很多项目中都出现过,用法也比较简单.一般的加些配置就可以了,而且Ehcache可以对页面.对象.数据进行缓存,同时支持集群/分布式 ...

  4. (转)Ehcache 整合Spring 使用页面、对象缓存

    Ehcache在很多项目中都出现过,用法也比较简单.一般的加些配置就可以了,而且Ehcache可以对页面.对象.数据进行缓存,同时支持集群/分布式缓存.如果整合Spring.Hibernate也非常的 ...

  5. Ehcache 整合Spring 使用页面、对象缓存(转载)

    Ehcache在很多项目中都出现过,用法也比较简单.一般的加些配置就可以了,而且Ehcache可以对页面.对象.数据进行缓存,同时支持集群/分布式缓存.如果整合Spring.Hibernate也非常的 ...

  6. Ehcache 整合Spring 使用页面、对象缓存(转)

    Ehcache在很多项目中都出现过,用法也比较简单.一般的加些配置就可以了,而且Ehcache可以对页面.对象.数据进行缓存,同时支持集群/分布式缓存.如果整合Spring.Hibernate也非常的 ...

  7. Ehcache 整合Spring 使用页面、对象缓存(1)

    转自:http://www.cnblogs.com/hoojo/archive/2012/07/12/2587556.html Ehcache在很多项目中都出现过,用法也比较简单.一般的加些配置就可以 ...

  8. Ehcache整合spring配置

    为了提高系统的运行效率,引入缓存机制,减少数据库访问和磁盘IO.下面说明一下ehcache和spring整合配置. 1.   需要的jar包 slf4j-api-1.6.1.jar ehcache-c ...

  9. Ehcache学习总结(2)--Ehcache整合spring配置

    首先需要的maven依赖为: [html] view plain copy <!--ehcache--> <dependency> <groupId>com.goo ...

  10. Ehcache整合spring配置,配置springMVC缓存

    为了提高系统的运行效率,引入缓存机制,减少数据库访问和磁盘IO.下面说明一下ehcache和spring整合配置. 1.   需要的jar包 slf4j-api-1.6.1.jar ehcache-c ...

随机推荐

  1. 【转】java图形界面设计(AWT)

    [转自]http://blog.sina.com.cn/s/blog_616e189f0100ne1t.html 1.       基本的java Frame操作. Java的图形界面的类主要包括AW ...

  2. thymeleaf 的hello world

    在研究一个模板引擎,选了这个thymeleaf .中间遇到很多的问题.现在在这里记录一下. 第一步:导入jar包.这里使用maven导入jar包 <!-- thymeleaf 核心包 begin ...

  3. Android——用对话框做登陆界面(自定义对话框AlertDialog,多线程,进度条ProgressDialog,ListView,GridView,SharedPreferences存,读数据,存取文本,assets文件)

    效果: 1.点击图标进入页面二 2.页面2图片暂停显示5秒进入页面三 3.点击页面三登陆按钮,打开登陆对话框,输入密码进入页面四 点击下载按钮,显示水平进度条 点击保存和获取用户名和密码 进入页面六  ...

  4. 使用平台调用(P/Invoke)

    使用平台调用 P/Invoke.它的全名叫平台调用(platform invoke).用于调用dll 中实现的非托管的单调(flat)编程接口.被称为使用C或C++ 调用约定(calling conv ...

  5. IOS多线程之Block编程

    1 什么是block   iOS SDK 4.0開始,Apple引入了block这一特性.字面上说,block就是一个代码块.可是它的奇妙之处在于在内联(inline)运行的时候(这和C++非常像)还 ...

  6. QML vs WEB

    UI领域, 如果是桌面应用,QML可以更快速.如果是手机UI,H5绝对占优. 移动设备已经为各行业的HMI的响应性和用户友好性设定了标准.汽车,医疗设备,工业自动化系统和消费电子产品制造商现在希望为其 ...

  7. 机器学习理论之SVM

    支持向量机系列 (1) 算法理论理解 http://blog.pluskid.org/?page_id=683 手把手教你实现SVM算法(一) (2) 算法应用 算法应用----python 实现实例 ...

  8. RBAC 基于角色的访问控制

    RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限.这样,就构造成“用户-角色- ...

  9. Spring Boot 官方文档学习(一)入门及使用

    个人说明:本文内容都是从为知笔记上复制过来的,样式难免走样,以后再修改吧.另外,本文可以看作官方文档的选择性的翻译(大部分),以及个人使用经验及问题. 其他说明:如果对Spring Boot没有概念, ...

  10. GDB十分钟教程 (链接)

    未联系作者,只能放个链接了. 十分赞的gdb教程. GDB十分钟教程