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

创建一个网站seo推广怎么做视频教程

创建一个网站,seo推广怎么做视频教程,湘潭seo 推广快湘潭磐石网络,出入青岛最新通知今天Spring Cache 缓存框架: Spring Cache功能介绍Spring Cache的Maven依赖Spring Cache的常用注解EnableCaching注解CachePut注解Cacheable注解CacheEvict注解 Spring Cache功能介绍 Spring Cache是Spring的一个框架,实现了基于注解的缓存功能。只需简单加一…

Spring Cache 缓存框架:

    • Spring Cache功能介绍
    • Spring Cache的Maven依赖
    • Spring Cache的常用注解
      • @EnableCaching注解
      • @CachePut注解
      • @Cacheable注解
      • @CacheEvict注解

Spring Cache功能介绍

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

  • Spring Cache提供了一层抽象底层可以切换不同的缓存实现。比较常见的(底层)缓存实现有:

    Redis、EHCache、Caffeine。可自定义地修改Spring Cache底层的缓存实现比如: 你想用Redis进行缓存,可修改Spring Cache配置,让其底层通过Redis来实现缓存功能。

  • 在具体的项目中,想切换Spring Cache底层的“缓存实现”时
    只需修改该 “缓存实现”的依赖Spring Cache底层就会自动切换“缓存实现”
    例如:此时的底层的缓存实现为: EHCache,想修改为Redis,只需把Redis依赖修改为EHCache的依赖即可。 (当然你的电脑得提前装好Redis、配置好Redis)

Spring Cache的Maven依赖

       <!--  Spring-data-redis依赖 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency><!-- Spring Cache的依赖,结合上面的Redis依赖,所以该Cache框架的底层“缓存实现”为: Redis  --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-cache</artifactId></dependency>

Spring Cache的常用注解

@EnableCaching注解

  • 通常加在类 (启动类 )上,用于 开启缓存注解功能

在这里插入图片描述

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

@CachePut注解

  • 一般加在方法上方法的返回值放到缓存
    只能“放”缓存数据

  •   @PostMapping/** 当数据插入到数据库的同时,还需要把这个数据保存到Redis中一份(进行数据的缓存),* 此时可用Spring Cache框架的 @CachePut注解 :将方法的返回值存入到缓存中。*///使用Spring Cache缓存数据/* 如果此时User的id为1,那么存入Redis中的“key名称”为: userCache::1 */@CachePut(cacheNames = "userCache",key = "#user.id")public User save(@RequestBody User user){userMapper.insert(user);return user;}
    

    @CachePut注解的多种实现方式:

在这里插入图片描述

  •   @PostMapping/** 当数据插入到数据库的同时,还需要把这个数据保存到Redis中一份(进行数据的缓存),* 此时可用Spring Cache框架的 @CachePut注解 :将方法的返回值存入到缓存中。*///使用Spring Cache缓存数据/* 如果此时User的id为1,那么存入Redis中的“key名称”为: userCache::1 */@CachePut(cacheNames = "userCache",key = "#user.id")/* #result得到是一个User对象,结合该对象的id,生成存入Redis数据库中的 key */@CachePut(cacheNames = "userCache",key = "#result.id") //存入Redis的key名为: userCache::1 --对象导航/* #p0 : 获得save()方法的第一个参数,即User对象 */@CachePut(cacheNames = "userCache",key = "#p0.id") //存入Redis的key名为: userCache::1/* #a0 : 获得方法的第一个参数,... */@CachePut(cacheNames = "userCache",key = "#a0.id") //存入Redis的key名为: userCache::1/* #root.args[1] : 获得第一个参数 */@CachePut(cacheNames = "userCache",key = "#root.args[1].id") //存入Redis的key名为: userCache::1//上面的@CachePut()注解选其中一个使用即可。public User save(@RequestBody User user){userMapper.insert(user);return user;}
    

@Cacheable注解

  • 一般加在方法上在方法执行前,先查询缓存中是否有数据如果有数据,则直接返回缓存数据如果没有缓存数据,调用方法并将方法返回值放到缓存中
    即“可”取缓存数据,也可“放”缓存数据

在这里插入图片描述

  •  @GetMapping/*在方法执行前,先查询缓存中是否有数据,如果有数据,则直接返回缓存数据。如果没有缓存数据,调用方法并将方法返回值放到缓存中。*/@Cacheable(cacheNames = "userCache",key = "#id") // key的生成 : userCache::10public User getById(Long id){ //如果该id的值为: 10User user = userMapper.getById(id);return user;}
    

@CacheEvict注解

  • 一般加在方法上,有 一条多条缓存数据从缓存中删除

在这里插入图片描述

  •    /*数据库中的数据被删掉了,对应的也需要给清理掉 (清除一条缓存数据)*/@CacheEvict(cacheNames="userCache",key ="#id") //清理一条或多条缓存数据@DeleteMappingpublic void deleteById(Long id){userMapper.deleteById(id);}/*数据库中的数据被删掉了,对应的也需要给清理掉 (清除多条缓存数据)*/
    @CacheEvict(cacheNames = "userCache",allEntries = true) //清理一条或多条缓存数据@DeleteMapping("/delAll")public void deleteAll(){userMapper.deleteAll();}
    
http://www.yayakq.cn/news/618186/

相关文章:

  • 滨州做网站的科技公司wordpress里的导航用什么
  • 惠州网站关键字优化建e室内设计网公众号
  • 用ul做的网站为何浮动不上去网站建设制作公司知道万维科技
  • 关闭 百度云加速 后网站打不开了国内软件开发
  • 网站建设:博采网络wordpress term
  • 口碑好网站建设定制东莞松山湖华为小镇
  • 东莞寮步镇网站做vip的网站好做吗
  • 柳州网站建设找华仔静态网站开发篇
  • 天津网站推广有哪些做游戏的网站
  • 宁波公司建设网站pc28网站开发
  • seo网站培训班营销型网站建设 价格
  • 做网站选用什么域名比较好安卓原生开发
  • 河南建设银行官方网站深圳网站建设推广方案
  • 中国五百强企业排名表小型网站怎样优化
  • 深圳黄页企业联系方式优化网站公司
  • 苏州网站设计制作公司重庆微信网站开发公司
  • 建设银行网站怎么设置转账额度淄博市沂源县建设局网站
  • 网站建设中如何发布信息推广服装箱包网站建设
  • 哪个做app的网站好网上购物平台大全
  • 小企业一键做网站张家港网站建设培训学校
  • 网站制作大概多少钱跨国网站
  • 山西移动网站设计网站建设 上传和下载功能
  • 朝阳网站网站建设迅雷
  • 合肥高端网站建设公司wordpress 添加评论等级
  • qq空间网站宿州网站建设设计公司
  • 服务类网站建设策划书洛阳外贸网站建设
  • 做网站地图的步骤自己给公司做网站该怎么做
  • 四川网站营销seo什么价格网站建设应计入什么科目
  • 网站设计需要在哪方面提升房地产推广方案和推广思路
  • 昆明php网站建设500人企业的网络搭建