1在启动类上使用注解

@SpringBootApplication

@EnableCaching

public class ConfApplication {

......

}

2在resources资源文件夹中添加ehcache.xml

<ehcache>

<!--

磁盘存储:将缓存中暂时不使用的对象,转移到硬盘,类似于Windows系统的虚拟内存

path:指定在硬盘上存储对象的路径

path可以配置的目录有:

user.home(用户的家目录)

user.dir(用户当前的工作目录)

java.io.tmpdir(默认的临时目录)

ehcache.disk.store.dir(ehcache的配置目录)

绝对路径(如:d:\\ehcache)

查看路径方法:String tmpDir = System.getProperty("java.io.tmpdir");

-->

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

<!--

defaultCache:默认的缓存配置信息,如果不加特殊说明,则所有对象按照此配置项处理

maxElementsInMemory:设置了缓存的上限,最多存储多少个记录对象

eternal:代表对象是否永不过期 (指定true则下面两项配置需为0无限期)

timeToIdleSeconds:最大的发呆时间 /秒

timeToLiveSeconds:最大的存活时间 /秒

overflowToDisk:是否允许对象被写入到磁盘

说明:下列配置自缓存建立起600秒(10分钟)有效 。

在有效的600秒(10分钟)内,如果连续120秒(2分钟)未访问缓存,则缓存失效。

就算有访问,也只会存活600秒。

-->

<defaultCache maxElementsInMemory="10000" eternal="false"

timeToIdleSeconds="600" timeToLiveSeconds="600" overflowToDisk="true" />

<cache name="productCache" maxElementsInMemory="10000" eternal="false"

timeToIdleSeconds="120" timeToLiveSeconds="600" overflowToDisk="true" />

</ehcache>

3在使用的方法上添加注解

/**

* 根据产品code取产品信息

*

* @param assetProductCode 资产产品code

* @return 资产产品信息

*/

@Cacheable(value = "#{root.methodName}+#{arg[0]}")

public ProductInformation getProductByProductCodeCache(Long assetProductCode) {

//若找不到缓存将打印出提示语句

System.err.println("没有走缓存!"+assetProductCode);

return productInformationMapper.getByProductCode(assetProductCode);

}

spring boot中使用ehcache的更多相关文章

  1. Spring Boot中使用EhCache实现缓存支持

     SpringBoot提供数据缓存功能的支持,提供了一系列的自动化配置,使我们可以非常方便的使用缓存.,相信非常多人已经用过cache了.因为数据库的IO瓶颈.一般情况下我们都会引入非常多的缓存策略, ...

  2. Spring Boot中的缓存支持(一)注解配置与EhCache使用

    Spring Boot中的缓存支持(一)注解配置与EhCache使用 随着时间的积累,应用的使用用户不断增加,数据规模也越来越大,往往数据库查询操作会成为影响用户使用体验的瓶颈,此时使用缓存往往是解决 ...

  3. Spring Boot中使用缓存

    Spring Boot中使用缓存 随着时间的积累,应用的使用用户不断增加,数据规模也越来越大,往往数据库查询操作会成为影响用户使用体验的瓶颈,此时使用缓存往往是解决这一问题非常好的手段之一. 原始的使 ...

  4. Spring Boot 数据缓存 - EhCache

    EhCache 集成 EhCache 是一个纯 Java 的进程内缓存框架,具有快速.精干等特点,是 Hibernate 中默认的 CacheProvider. 在 Spring Boot 中集成 E ...

  5. 56. spring boot中使用@Async实现异步调用【从零开始学Spring Boot】

    什么是"异步调用"? "异步调用"对应的是"同步调用",同步调用指程序按照定义顺序依次执行,每一行程序都必须等待上一行程序执行完成之后才能执 ...

  6. 46. Spring Boot中使用AOP统一处理Web请求日志

    在之前一系列的文章中都是提供了全部的代码,在之后的文章中就提供核心的代码进行讲解.有什么问题大家可以给我留言或者加我QQ,进行咨询. AOP为Aspect Oriented Programming的缩 ...

  7. Spring Boot 缓存应用 Ehcache 入门教程

    Ehcache 小巧轻便.具备持久化机制,不用担心JVM和服务器重启的数据丢失.经典案例就是著名的Hibernate的默认缓存策略就是用Ehcache,Liferay的缓存也是依赖Ehcache. 本 ...

  8. spring boot 中 Cache 的使用

    参考:https://blog.csdn.net/qq_38974634/article/details/80650810 一.JSR107 Java Caching 定义5个核心的接口,分别是Cac ...

  9. spring boot(三):Spring Boot中Redis的使用

    spring boot对常用的数据库支持外,对nosql 数据库也进行了封装自动化. redis介绍 Redis是目前业界使用最广泛的内存数据存储.相比memcached,Redis支持更丰富的数据结 ...

随机推荐

  1. tornado源码简单实现

    首先基本的同步流程是: class Index(tornado.web.RequestHandle): def get(self): self.write('hellow,word') app = t ...

  2. asp.net运行原理及机制

    当一个HTTP请求到服务器并被IIS接收到之后,IIS首先通过客户端请求的页面类型为其加载相应的.dll文件,然后在处理过程中将这条请求发送给能够处理这个请求的模块.在ASP.NET 3.5中,这个模 ...

  3. qt QAbstractItemModel一些方法介绍

    一. virtual bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::Edit ...

  4. 吴恩达机器学习101:SVM优化目标

    1.为了描述SVM,需要从logistic回归开始进行学习,通过改变一些小的动作来进行支持向量机操作.在logistic回归中我们熟悉了这个假设函数以及右边的sigmoid函数,下式中z表示θ的转置乘 ...

  5. 在mybatis中,在列表分页查询过程中造成集合属性数据丢失的问题

    由于在进行多表关联分页查询时,某一个集合属性的多条数据正好位于2页的分割处,那么就会造成在前一页获取到的该集合属性的集合内部数据不全,因为其余数据被分到了第二页, 因此建议在进行集合属性的封装时,最好 ...

  6. 在Linux上安装tomcat和JDK

    1.tomcat的安装 a.#cd download(进入download文件夹) b.#wget http://111.23.5.142:82/mirrors.hust.edu.cn/apache/ ...

  7. 初探CSS -3 语法

    CSS 语法 实例 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> < ...

  8. nodejs fs copy本地文件src dst

    1. // fs.writeFileSync(pathNewFile, fs.readFileSync(fileName)); 2.   fs.createReadStream(fileName).p ...

  9. Java读取二进制文件的方式

    public static void readFile(String fileName){ File file = new File(fileName); if(file.exists()){ try ...

  10. Access数据库删除重复记录,只保留一条记录的做法

    Access数据库删除重复记录,只保留一条记录的做法: 只保留id最小的记录方法: delete from [表名] where id not in (select min(id) from [表名] ...