springboot~Cache注解缓存在代码中的获取

对于springboot中基于方法的缓存Caching来说,我们直接以声明的方式添加,删除这些缓存,而它们在redis这种持久化产品中,通过value::key的方法组成一个redis.key,在业务方法中,可以通过这种key来手动获取它们。

  • 注解声明
	@CacheEvict(value = CacheConstants.USER_DETAILS, key = "#sysUser.username")
	public Boolean removeUserById(SysUser sysUser) {
		sysUserRoleMapper.deleteByUserId(sysUser.getUserId());
		this.removeById(sysUser.getUserId());
		return Boolean.TRUE;
	}

  • 业务代码中获取
Cache cache = cacheManager.getCache(CacheConstants.USER_DETAILS);
if (cache != null && cache.get(username) != null) {
  return (PigUser) cache.get(username).get();
}
  • redis中的存储
posted @   张占岭  阅读(515)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2016-09-09 Lind.DDD.Manager里的3,7,15,31,63,127,255,511,1023,2047
2014-09-09 数据结构~时间复杂度
2013-09-09 我心中的核心组件(可插拔的AOP)~调度组件quartz.net
2011-09-09 WebRequest之HttpWebRequest实现服务器上文件的下载(一)
2011-09-09 中大型系统架构组合之EF4.1+ASP.NET MVC+JQuery
点击右上角即可分享
微信分享提示