SpringBoot SpringBoot 开发实用篇 5 整合第三方技术 5.2 Spring 缓存使用方式

news2025/1/10 16:53:14

SpringBoot

【黑马程序员SpringBoot2全套视频教程,springboot零基础到项目实战(spring boot2完整版)】

SpringBoot 开发实用篇

文章目录

      • SpringBoot
      • SpringBoot 开发实用篇
      • 5 整合第三方技术
        • 5.2 Spring 缓存使用方式
          • 5.2.1 Spring 缓存使用
          • 5.2.2 小结

5 整合第三方技术

5.2 Spring 缓存使用方式

5.2.1 Spring 缓存使用

之前我们通过两个小栗子,模拟了一下“缓存”技术的实现

在这里插入图片描述

其实SpringBoot提供了缓存技术,方便开发者去使用缓存

【缓存使用】

大致步骤:

  1. 启用缓存
  2. 设置进入缓存的数据
  3. 设置读取缓存的数据

【1 添加依赖】

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

在这里插入图片描述

【2 修改启动类】

package com.dingjiaxiong;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching;

@SpringBootApplication
//开启缓存功能的注解
@EnableCaching
public class Springboot19CacheApplication {

    public static void main(String[] args) {
        SpringApplication.run(Springboot19CacheApplication.class, args);
    }

}

修改Books 业务层的实现类

在这里插入图片描述

@Autowired
private BookDao bookDao;

@Override
@Cacheable(value = "cacheSpace",key = "#id")
public Book getById(Integer id) {
    return bookDao.selectById(id);
}

在这里插入图片描述

OK, 直接重新运行

在这里插入图片描述

这是查询第一次id 为1 的数据,接下来把控制台清空

在这里插入图片描述

注意:笔者下面用动图,演示第二次进行同样的查询

在这里插入图片描述

效果特别明显,不管笔者请求几次,控制台都不会有输出了,说明这后面的请求并没有去访问数据库

【这样缓存就已经加上了】

再试一个2吧

在这里插入图片描述

没错就是这个样

回顾一下

导入缓存技术对应的starter

在这里插入图片描述

启用缓存

在这里插入图片描述

设置当前操作的结果数据进入缓存

在这里插入图片描述

5.2.2 小结
  1. SpringBoot启用缓存的方式
  • @EnableCaching
  • @Cacheable

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/20124.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数字集成电路设计(五、仿真验证与 Testbench 编写)(二)

文章目录4. 信号时间赋值语句4.1 时间延迟的语法说明4.2 时间延迟的描述形式4.3 边沿触发事件4.3.1 事件表达式4.3.2 边沿触发语法格式4.4 电平敏感事件4. 信号时间赋值语句 &#xff01;&#xff01;信号赋值语句是硬件描述语言非常重要的一条语句&#xff0c;是对于任意信号…

Zookeeper:Zookeeper的主从选举机制

ZAB 协议&#xff0c;全称 Zookeeper Atomic Broadcast&#xff08;Zookeeper 原子广播协议&#xff09;&#xff0c;是为分布式协调服务 ZooKeeper 专门设计的一种支持崩溃恢复的一致性协议。基于该协议&#xff0c;ZooKeeper 实现了一种主从模式的系统架构来保持集群中各个副…

业务定制型异地多活架构设计

1个原理 大道至简-异地多活核心原理 异地多活本质上是 CAP 中的AP 大道至深-CAP 粒度 CAP 关注的粒度是数据&#xff0c;而不是系统&#xff0c;需要根据不同业务的数据特点来设计异地多活 延迟 CAP 是忽略网络延迟的 &#xff0c;但工程落地不可能做到零延迟 分区容忍…

【Linux】linux中你不得不爱的命令集(上)

Linux命令集 我们将要介绍的命令并不是linux中所有的命令&#xff0c;是我们常见的和经常要使用的命令。 我们所用的linux版本是centos7&#xff0c;我们的linux搭建是在腾讯云服务器上搭建的&#xff0c;借助Xshell登录服务器&#xff0c;在root下进行命令行的操作。 目录 L…

[附源码]java毕业设计社区生鲜仓库管理系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

异地多活架构的3种模式

业务定制型异地多活 按照业务的优先级进行排序&#xff0c;优先保证核心业务异地多活 基于核心业务的流程和数据&#xff0c;设计定制化的异地多活架构 优点 对基础设施无强要求&#xff0c;例如机房部署、存储系统、时延等&#xff0c;一般部署在远距离的两个城市&#xff…

经济师报考专业选择及难度分析!这三个专业每年报考人数超10万!

经济师 经济师考试报考专业设有10个专业&#xff0c;含工商管理、农业经济、财政税收、金融、保险、运输经济、人力资源管理、旅游经济、建筑与房地产经济、知识产权。那么&#xff0c;哪些专业是经济师报考的热门专业&#xff1f;哪些专业前景较好&#xff1f;哪个又更好考呢…

SAP 物料分类账配置详解Part 2( 基于SAP S/4HANA1909 版本)

1.12 检查物料会计科目的结算 1.13 激活在制品实际成本计算 1.14 定义并分配评估策略 1.15 定义实际成本核算/物料分类帐的访问 1.16 分配成本核算码到物料类型 1.17 将评估范围设置为生产 1.12 检查物料会计科目的结算 1.12.1 概念说明 为物料分类账的结账配置自动…

C++模拟OpenGL库——图片处理及纹理系统(二):图片Alpha值混合操作

目录 Alpha值混合操作 更改一些类接口设置&#xff0c;实现Alpha值设定 Alpha值混合操作 先上图&#xff0c;其实原理和ColorLerp的原理一样&#xff0c;一种线性插值的方法来实现Alpha通道的混合。 Alpha通道就是对RGB三个值的一种表现约束&#xff0c;比如Alpha0.5&#x…

使用keytool生成Tomcat证书

一、HTTPS原理 1、HTTP、HTTPS、SSL、TLS介绍与相互关系 &#xff08;1&#xff09;HTTP&#xff1a;平时浏览网页时候使用的一种协议。HTTP协议传输的数据都是未加密的&#xff08;明文&#xff09;&#xff0c;因此使用HTTP协议传输隐私信息非常不安全。 &#xff08;2&am…

人工智能学习相关笔记

文章目录留出法(hold-out)Artifact (error)理解交叉熵损失函数(CrossEntropy Loss)信息量信息熵相对熵(KL散度)交叉熵交叉熵在单分类问题中的应用回顾知识蒸馏公式对抗学习随机投影(Random Projection)概述基本实现sklearn中的随机投影独立成分分析(ICA)ICA算法ICA 应用sklearn…

tslib库编译与移植

tslib库编译与移植 1.tslib库简介 tslib 是电阻式触摸屏用于校准的一个软件库&#xff0c;是一个开源的程序&#xff0c;能够为触摸屏驱动获得的采样提供诸如滤波、去抖、校准等功能&#xff0c;通常作为触摸屏驱动的适配层&#xff0c;为上层的应用提供了一个统一的接口。 2…

数据结构——顺序表

目录 一.简介 线性表 顺序表 二.结构体与初始化 1.创建 2.初始化 三.功能实现 1.打印 2.销毁 3.扩容 4.尾插 5.尾删 6.头插 7.头删 8.查找元素 9.下标位置的插入与某一数据前的插入 10.下标位置的删除与某一数据的删除 11.头插、头删、尾插、尾删的常态化 一.简…

模块电路选型(1)----电源模块

系列文章目录 1.电源模块 2.主控模块 3.传感器模块 4.通信模块 5.电机驱动模块 6.存储模块 7.人机交互模块 文章目录前言一、DCDC电源模块1、LM2596 DCDC降压模块设计二、LDO电源模块1、1117芯片前言 送给大学毕业后找不到奋斗方向的你&#xff08;每周不定时更新&#x…

Spring Data JPA之Spring boot整合JPA进行CRUD

Spring boot整合JPA进行CRUD前言系列博客本博客的实现demo环境配置1.POM依赖2.application.yml文件完整的项目结构代码实现实体类启动类创建数据访问层使用Spring Data JPA 创建带条件的CRUD编写业务层创建UserController类运行测试插入用户数据删除用户数据修改数据查询数据根…

kubernetes(K8S)学习笔记P2:搭建K8s集群2种方式

搭建K8s集群&#xff1a;2种方式2.搭建K8s集群--->kubeadm2.1环境准备2.1.1关闭防火墙2.1.2关闭seliux2.1.3关闭swap分区2.1.4设置主机名称2.1.5将桥接的IPv4流量传递到iptables的链2.1.6时间同步2.2三台虚拟机都安装Docker2.3添加阿里云YUM软件源2.4安装/kubeadm/kubelet2.…

dubbo:从零理解及搭建dubbo微服务框架(一)【附带源码】

0.引言 dubbo作为阿里巴巴开源的微服务框架&#xff0c;提供了高性能的RPC调用。同时因为有阿里的背书&#xff0c;在国内市场得到了广泛应用&#xff0c;dubbo的开源工作在2018年2月阿里将项目捐献给apache基金会后&#xff0c;得到了更加广大的发展。 之前我们讲解了spring…

【图像分割】2021-Swin-Unet CVPR

【图像分割】2021-Swin-Unet CVPR 论文题目&#xff1a;Swin-Unet: Unet-like Pure Transformer for Medical Image Segmentation 论文链接&#xff1a;https://arxiv.org/abs/2105.05537 论文代码&#xff1a;https://github.com/HuCaoFighting/Swin-Unet 发表时间&#xff1a…

财政政策与货币政策

财政政策与货币政策 – 潘登同学的宏观经济学笔记 文章目录财政政策与货币政策 -- 潘登同学的宏观经济学笔记中国财政状况中国的财政盈余乘数效应还是李嘉图等价“乘数效应”还是“挤出效应”&#xff08;crowding out&#xff09;——“破窗理论”的启示货币政策中国货币的状况…

GreaalVM编译springboot编译springboot

GreaalVM编译springboot编译springboot 原文转自&#xff1a;https://lingkang.top/archives/greaalvm%E7%BC%96%E8%AF%91springboot https://lingkang.top/archives/greaalvm%E7%BC%96%E8%AF%91springboot window下使用GreaalVM编译springboot存在很多坑&#xff0c;主要是…