三十二 SpringBoot整合@Cacheable注解使用

本文详细介绍了SpringBoot中@Cacheable注解的使用,包括其在缓存数据、设置缓存策略和定义key的作用。通过实例展示了如何在UsersServiceImpl.java和UsersServiceTest.java中应用该注解来提高数据查询效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • @Cacheable
  • @CacheEvict

一 @Cacheable

1.1 @Cacheable作用:把方法的返回值添加到Ehcache缓存中。

1.2 value属性:指定一个Ehcache配置文件中的缓存策略,如果有给定一个value,name则表示使用的默认的缓存策略。

如:

	@Override
	// @Cacheable:对当前查询的对象做缓存处理 value指定ehcache.xml中的哪个配置
	@Cacheable(value="users")
	public Users findUserById(Integer id) {
		return usersRepository.findById(id).get();
	}
    <!-- 自定义缓存策略,name不能重复 -->
    <cache name="users"
            maxElementsInMemory="10000"
            eternal="false"
            timeToIdleSeconds="120"
            timeToLiveSeconds="120"
            maxElementsOnDisk="10000000"
            diskExpiryThreadIntervalSeconds="120"
            memoryStoreEvictionPolicy="LRU">
        <persistence strategy="localTempSwap"/>
    </cache>

1.3 key属性:给存储的值起个名称,在查询时,如果有名称相同的,那么则直接从缓存中将数据返回。

UsersServiceImpl.j

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值