spring boot整合cache使用Ehcache 进行数据缓存

这篇具有很好参考价值的文章主要介绍了spring boot整合cache使用Ehcache 进行数据缓存。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

之前的文章 spring boot整合 cache 以redis服务 处理数据缓存 便捷开发 带着大家通过spring boot整合了 cache 缓存
那么 我们就来说说 其他服务的缓存
而spring boot默认的缓存方案就是 cache 用simple模式

spring boot的强大在于它的整合能力 它将其他缓存技术整合 统一了接口
简单说 所有的接口都是一样的 代码不用动 换实现就好了

那么问题来了,都有哪些整合技术呢?
如下图
spring boot整合cache使用Ehcache 进行数据缓存,spring boot,缓存,java
这是官方给出的解决方案
那么 我们这里 就在说一下
memcached
Redis
Simple
Ehcache

Redis之前说过了 Simple就是默认的
然后 本文 我们来说 Ehcache

然后 我们打开 java spring boot项目

pom.xml 导入坐标

<dependency>
	<groupId>net.sf.ehcache</groupId>
	<artifactId>ehcache</artifactId>
</dependency>
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-cache</artifactId>
</dependency>

然后 application.yml 加上如下代码

spring:
  cache:
    type: ehcache

这里 就是告诉它 我们 cache 要用 ehcache服务

然后 找到如下图 目录 在下面创建一个 ehcache.xml
spring boot整合cache使用Ehcache 进行数据缓存,spring boot,缓存,java
参考代码如下

<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="http://www.ehcache.org/ehcache.xsd"
         updateCheck="false">

    <defaultCache
            eternal="false"
            timeToIdleSeconds="120"
            timeToLiveSeconds="120"
            maxEntriesLocalHeap="10000"
            maxEntriesLocalDisk="10000000"
            diskExpiryThreadIntervalSeconds="120"
            memoryStoreEvictionPolicy="LRU">

        <persistence strategy="localTempSwap"/>

    </defaultCache>

    <!-- 添加其他自定义缓存配置 -->

</ehcache>

地址这里 会出现报红的情况 这个是idea的问题 和我们没关系 不用管
spring boot整合cache使用Ehcache 进行数据缓存,spring boot,缓存,java
然后 来说说它的配置

eternal: 缓存条目是否永久有效,这里设置为 false 表示不永久有效。
timeToIdleSeconds: 缓存条目在空闲多少秒后过期。
timeToLiveSeconds: 缓存条目在存活多少秒后过期。
maxEntriesLocalHeap: 缓存在堆内存中的最大条目数。
maxEntriesLocalDisk: 缓存在磁盘中的最大条目数。
diskExpiryThreadIntervalSeconds: 磁盘过期线程的运行间隔,用于清理过期的磁盘缓存条目。
memoryStoreEvictionPolicy: 内存存储驱逐策略,这里设置为 LRU (Least Recently Used,最近最少使用)。
后面是元素时间和策略 如果你想具体了解 可以自己去搜索

老规矩 启动类 加上 EnableCaching 启动cache
spring boot整合cache使用Ehcache 进行数据缓存,spring boot,缓存,java
这里 我们属性类 就不需要 implements Serializable了
spring boot整合cache使用Ehcache 进行数据缓存,spring boot,缓存,java
然后 我们接口方法还是这样写
spring boot整合cache使用Ehcache 进行数据缓存,spring boot,缓存,java
我们声明Cacheable 缓存空间叫 cacheSpace
还是那句话 如果根据id查 可以把id作为key进行存储
spring boot整合cache使用Ehcache 进行数据缓存,spring boot,缓存,java
但如果这个时候 你直接启动项目 然后调用接口会报错的
因为 现在还没有 cacheSpace 这个缓存

ehcache.xml加入代码

<!-- 添加其他自定义缓存配置 -->
<cache name="cacheSpace"
   eternal="false"
   timeToIdleSeconds="300"
   timeToLiveSeconds="600"
   maxEntriesLocalHeap="1000"
   maxEntriesLocalDisk="10000"
   diskExpiryThreadIntervalSeconds="120"
   memoryStoreEvictionPolicy="LRU"/>

我们加一个叫 cacheSpace 的缓存
spring boot整合cache使用Ehcache 进行数据缓存,spring boot,缓存,java
重新启动项目
然后 我们调用接口
spring boot整合cache使用Ehcache 进行数据缓存,spring boot,缓存,java
正常返回 看项目控制台 明显是有执行sql的
spring boot整合cache使用Ehcache 进行数据缓存,spring boot,缓存,java
然后 我们清空控制台内容 然后重新调接口

很明显 我们的缓存已经形成了
spring boot整合cache使用Ehcache 进行数据缓存,spring boot,缓存,java文章来源地址https://www.toymoban.com/news/detail-825324.html

到了这里,关于spring boot整合cache使用Ehcache 进行数据缓存的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Spring Boot整合Redis的高效数据缓存实践

    Spring Boot整合Redis的高效数据缓存实践

    引言 在现代Web应用开发中,数据缓存是提高系统性能和响应速度的关键。Redis作为一种高性能的缓存和数据存储解决方案,被广泛应用于各种场景。本文将研究如何使用Spring Boot整合Redis,通过这个强大的缓存工具提高应用的性能和可伸缩性。 整合redis,需要先安装redis Redis 

    2024年01月22日
    浏览(40)
  • Spring Boot 缓存 Cache 入门

    Spring Boot 缓存 Cache 入门

    在系统访问量越来越大之后,往往最先出现瓶颈的往往是数据库。而为了减少数据库的压力, 我们可以选择让产品砍掉消耗数据库性能的需求 。 当然也可以引入缓存,在引入缓存之后,我们的读操作的代码,往往代码如下: 这段代码,是比较常用的缓存策略,俗称**“被动写

    2024年02月15日
    浏览(10)
  • 【SpringBoot篇】使用Spring Cache高效处理缓存数据

    【SpringBoot篇】使用Spring Cache高效处理缓存数据

    Spring Cache是一个框架,只要简单加一个注解,就能实现缓存功能。Spring Cache是Spring Framework提供的一个模块,它为应用程序添加了缓存支持。通过使用Spring Cache,你可以在方法级别上定义缓存规则,将方法的返回结果缓存起来,以提高方法调用的性能和响应速度。 是一个框架,只要简

    2024年02月05日
    浏览(22)
  • 缓存 - Spring Boot 整合 Caffeine 不完全指北

    缓存 - Spring Boot 整合 Caffeine 不完全指北

    缓存 - Caffeine 不完全指北 @Cacheable :表示该方法支持缓存。当调用被注解的方法时,如果对应的键已经存在缓存,则不再执行方法体,而从缓存中直接返回。当方法返回null时,将不进行缓存操作。 @CachePut :表示执行该方法后,其值将作为最新结果更新到缓存中,每次都会执

    2024年02月16日
    浏览(10)
  • 三、Spring Cache + Redis 缓存数据

    Spring Cache 是一个非常优秀的缓存组件。自Spring 3.1起,提供了类似于@Transactional注解事务的注解Cache支持,且提供了Cache抽象,方便切换各种底层Cache(如:redis) 使用Spring Cache的好处:  1,提供基本的Cache抽象,方便切换各种底层Cache;  2,通过注解Cache可以实现类似于事务

    2024年02月05日
    浏览(11)
  • 【Redis(8)】Spring Boot整合Redis和Guava,解决缓存穿透、缓存击穿、缓存雪崩等缓存问题

    在缓存技术的挑战及设计方案我们介绍了使用缓存技术可能会遇到的一些问题,那么如何解决这些问题呢? 在构建缓存系统时,Spring Boot和Redis的结合提供了强大的支持,而Guava的 LoadingCache 则为缓存管理带来了便捷的解决方案。下面我将介绍如何通过整合Spring Boot、Redis和Gu

    2024年04月22日
    浏览(11)
  • 常用的缓存工具有ehcache、memcache和redis,这里介绍spring中ehcache的配置。

    常用的缓存工具有ehcache、memcache和redis,这里介绍spring中ehcache的配置。

    常用的缓存工具有ehcache、memcache和redis,这里介绍spring中ehcache的配置。 1.在pom添加依赖: 2.在applicationContext.xml添加命名空间: 3.在applicationContext.xml中配置ehcache: 4.创建ehcache的配置文件ehcache-setting.xml: 这里我们配置了自定义缓存cacheTest,10秒过期。 cache元素的属性: name:缓

    2024年02月16日
    浏览(7)
  • 用spring Cach在Redis中缓存数据表

    Spring Cache的用法非常简单,以下是使用Spring Cache的步骤: 在Spring配置文件中启用缓存功能: 在需要进行缓存的方法上添加@Cacheable注解: 在该示例中,\\\"cacheName\\\"是缓存的名称,可以根据需要自定义。如果缓存中已经存在该方法的结果,则直接从缓存中获取结果;否则,会执行

    2024年01月16日
    浏览(9)
  • [Spring boot] Spring boot 整合RabbitMQ实现通过RabbitMQ进行项目的连接

    [Spring boot] Spring boot 整合RabbitMQ实现通过RabbitMQ进行项目的连接

     🍳作者:天海奈奈 💭眼过千遍不如手锤一遍:推荐一款模拟面试,斩获大厂 o f f e r ,程序员的必备刷题平台 − − 牛客网  👉🏻点击开始刷题之旅 目录 什么是RabbitMQ   消息队列:接受并转发消息,类似于快递公司 消息队列的优点 消息队列的特性 RabbitMQ特点 RabbitMQ核

    2024年01月24日
    浏览(23)
  • springboot:缓存不止redis,学会使用本地缓存ehcache

    springboot:缓存不止redis,学会使用本地缓存ehcache

    随着redis的普及,更多的同学对redis分布式缓存更加熟悉,但在一些实际场景中,其实并不需要用到redis,使用更加简单的本地缓存即可实现我们的缓存需求。 今天,我们一起来看看本地缓存组件ehcache ehcache是基于java开发的本地缓存组件,无需单独安装部署,只要引入jar包就

    2024年02月01日
    浏览(10)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包