当前位置: 首页 > news >正文

郑州做网站那家好考证培训机构报名网站

郑州做网站那家好,考证培训机构报名网站,陈铭生杨昭,国家卫生健康委官网文章目录 1、Spring Cache介绍2、 常用注解3、 使用案例 1、Spring Cache介绍 Spring Cache 是一个框架,实现了基于注解的缓存功能,只需要简单地加一个注解,就能实现缓存功能。 Spring Cache 提供了一层抽象,底层可以切换不同的…

文章目录

        • 1、Spring Cache介绍
        • 2、 常用注解
        • 3、 使用案例

1、Spring Cache介绍

Spring Cache 是一个框架,实现了基于注解的缓存功能,只需要简单地加一个注解,就能实现缓存功能。

Spring Cache 提供了一层抽象,底层可以切换不同的缓存实现,例如:

  • EHCache
  • Caffeine
  • Redis(常用)

起步依赖:

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-cache</artifactId><version>2.7.3</version> 
</dependency>
2、 常用注解

在SpringCache中提供了很多缓存操作的注解,常见的是以下的几个:

注解说明
@EnableCaching开启缓存注解功能,通常加在启动类上
@Cacheable在方法执行前先查询缓存中是否有数据,如果有数据,则直接返回缓存数据;如果没有缓存数据,调用方法并将方法返回值放到缓存中
@CachePut将方法的返回值放到缓存中
@CacheEvict将一条或多条数据从缓存中删除

在spring boot项目中,使用缓存技术只需在项目中导入相关缓存技术的依赖包,并在启动类上使用@EnableCaching开启缓存支持即可。

例如,使用Redis作为缓存技术,只需要导入Spring data Redis的maven坐标即可。

3、 使用案例

引导类上加@EnableCaching

@Slf4j
@SpringBootApplication
@EnableCaching//开启缓存注解功能
public class CacheDemoApplication {public static void main(String[] args) {SpringApplication.run(CacheDemoApplication.class,args);log.info("项目启动成功...");}
}

在方法上加注解@CachePut

	/*** CachePut:将方法返回值放入缓存* value:缓存的名称,每个缓存名称下面可以有多个key* key:缓存的key*/@PostMapping@CachePut(value = "userCache", key = "#user.id")//key的生成:userCache::1public User save(@RequestBody User user){userMapper.insert(user);return user;}

**说明:**key的写法如下

#user.id : #user指的是方法形参的名称, id指的是user的id属性 , 也就是使用user的id属性作为key ;

#result.id : #result代表方法返回值,该表达式 代表以返回对象的id属性作为key ;

#p0.id:#p0指的是方法中的第一个参数,id指的是第一个参数的id属性,也就是使用第一个参数的id属性作为key ;

#a0.id:#a0指的是方法中的第一个参数,id指的是第一个参数的id属性,也就是使用第一个参数的id属性作为key ;

#root.args[0].id:#root.args[0]指的是方法中的第一个参数,id指的是第一个参数的id属性,也就是使用第一个参数

的id属性作为key ;

在方法上加注解@Cacheable

/*** Cacheable:在方法执行前spring先查看缓存中是否有数据,如果有数据,则直接返回缓存数据;若没有数据,	  *调用方法并将方法返回值放到缓存中* value:缓存的名称,每个缓存名称下面可以有多个key* key:缓存的key*/@GetMapping@Cacheable(cacheNames = "userCache",key="#id")public User getById(Long id){User user = userMapper.getById(id);return user;}

作用: 在方法执行前,spring先查看缓存中是否有数据,如果有数据,则直接返回缓存数据;若没有数据,调用方法并将方法返回值放到缓存中

​ value: 缓存的名称,每个缓存名称下面可以有多个key

​ key: 缓存的key ----------> 支持Spring的表达式语言SPEL语法

在 方法上加注解@CacheEvict

	@DeleteMapping@CacheEvict(cacheNames = "userCache",key = "#id")//删除某个key对应的缓存数据public void deleteById(Long id){userMapper.deleteById(id);}@DeleteMapping("/delAll")@CacheEvict(cacheNames = "userCache",allEntries = true)//删除userCache下所有的缓存数据public void deleteAll(){userMapper.deleteAll();}
http://www.ds6.com.cn/news/20542.html

相关文章:

  • 延庆网站建设怎么提高百度关键词排名
  • 苏州建网站制作费用多少钱cps推广是什么意思
  • 对于网站建设提出建议电商平台发展现状与趋势
  • 郑州做网站排名贵州百度seo整站优化
  • 网站营销建设长沙百度快速优化
  • 泗阳县建设局网站百度下载官网
  • 如何上传自己的做的网站sem推广
  • 如何做360网站的排名廊坊自动seo
  • 115做网站淘宝关键词排名查询网站
  • 怎么做电影网站教程seo搜索引擎优化平台
  • 图片素材网站模板aso优化教程
  • 沈阳网站建设公司企业网站代运营
  • 网站界面设计内容链接搜索
  • 政府门户网站流行设计友情链接平台网站
  • seo统计网络优化app哪个好
  • 易营宝智能建站平台网络营销代运营外包公司
  • 用angular做的网站百度网页版链接地址
  • wordpress内链插件杭州seo网站推广
  • 上海行业网站建设百度注册入口
  • 云顶科技做网站的seo技术服务外包公司
  • 计算机怎么建设网站今天的特大新闻有哪些
  • 建网站做商城个体户资质可以网址链接查询
  • 做商城网站的公司开创集团与百度
  • 北京网站备案在哪适合成人参加的培训班
  • ui设计师的网站网站推广线上推广
  • 新手学做网站 pdf下载小学生班级优化大师
  • 网站流量监控怎么做查域名ip地址查询
  • 网站拒绝被百度收录seo百度贴吧
  • 广州网站推广¥做下拉去118cr百度信息流效果怎么样
  • 湖北省建设用地预审网站东莞网站制作