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

SpringCash

文章目录

  • 简介
  • 引入依赖
  • 常用注解
  • application.yml
  • 使用
    • 1. 启动类添加注解
    • 使用方法上添加注解


简介

  • Spring Cache是一个框架,实现了基于注解的缓存功能
  • 底层可以使用EHCache、Caffeine、Redis实现缓存。

注解一般放在Controller的方法上,@CachePut 注解一般有两个参数,第一个时存储的名称,第二个时名称后边的key,使用SpEL动态的计算key。其余的注解也都是这两个参数。在用户端的查询操作需要使用@Cacheable,服务器端的增删改都使用@CacheEvict

引入依赖

SpringCache
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-cache</artifactId>
</dependency>Redis
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>mysql
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope>
</dependency>mybatis
<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.2.0</version>
</dependency>

常用注解

在这里插入图片描述

application.yml

server:port: 8888
spring:datasource:druid:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=trueusername: rootpassword: rootredis:host: localhostport: 6379password: 123456database: 1
# 日志
logging:level:com:itheima:mapper: debugservice: infocontroller: info

使用

1. 启动类添加注解

package com.itheima;import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching;@Slf4j
@SpringBootApplication
-----------------------------------------
添加下面的注解
@EnableCaching
-----------------------------------------
public class CacheDemoApplication {public static void main(String[] args) {SpringApplication.run(CacheDemoApplication.class,args);log.info("项目启动成功...");}
}

使用方法上添加注解

相关文章:

SpringCash

文章目录 简介引入依赖常用注解application.yml使用1. 启动类添加注解使用方法上添加注解 简介 Spring Cache是一个框架&#xff0c;实现了基于注解的缓存功能底层可以使用EHCache、Caffeine、Redis实现缓存。 注解一般放在Controller的方法上&#xff0c;CachePut 注解一般有…...

小红书的文案是怎么写的?有啥套路么!

小红书文案是有自己的调性的&#xff0c;为什么别人的笔记轻轻松松就是爆款&#xff0c;而自己写的笔记却没有人看呢&#xff0c;小红书文案写作有啥套路&#xff1f; 接下来伯乐网络传媒给大家讲一讲&#xff0c;小红书文案写作揭秘&#xff1a;抄作业、拆解产品到种草笔记结…...

开放平台接口安全验证

文章目录 开放平台接口安全验证I 加签方式说明1.1 签名生成的通用步骤1.2 生成随机数算法1.3 举例1.4 签名校验工具II Header参数说明III 业务接口返回结构说明开放平台接口安全验证 统一使用sign签名验证,签名规则也会在本文档中,详细说明。请大家认真阅读。 向平台申请密码…...

【AI原理解析】— GPT-4o模型

目录 1. 统一架构设计 2. 端到端训练 3. 模态间的信息融合 4. 语音处理 5. 视频处理 6. 性能特点 7. 模型特点 8. 服务和免费政策 9. 实时推理能力 10. 高效的编码方式 11. 输出与反馈 1. 统一架构设计 GPT-4o采用单一的Transformer架构进行设计&#xff0c;将文本…...

Qt中图表图形绘制类介绍

接上篇介绍QChart 相关的类&#xff0c;本片主要在QChart 载体上进行图表图形绘制使用各种形状的图类。 一.QXYSeries类 QXYSeries类是QLineSeries折线图&#xff0c;QSplineSeries样条曲线图&#xff0c;QScatterSeries散点图的基类&#xff1b; QXYSeries类的使用都可以参考…...

nginx rewrite地址重写

常用的nginx正则表达式 ^匹配以...开头的字符串$匹配以...结尾的字符串^$^$表示空行*匹配前面的字符0次或者多次&#xff08;通配符*表示任意数量的任意字符&#xff09;匹配前面的字符1次或多次?匹配前面的字符0次或1次.匹配除了“\n”之外的任意单个字符&#xff0c;[.\n]表…...

java+vue3+el-tree实现树形结构操作

基于springboot vue3 elementPlus实现树形结构数据的添加、删除和页面展示 效果如下 代码如下&#xff0c;业务部分可以自行修改 java后台代码 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.daztk.mes.common.annotation.LogOperation…...

Oracle创建索引的LOGGING | NOLOGGING区别

在Oracle中&#xff0c;创建索引时的LOGGING和NOLOGGING选项主要影响索引创建过程中产生的重做日志&#xff08;redo log&#xff09;的数量。这两个选项对于性能和数据恢复能力有着显著的影响。以下是关于这两个选项的详细解释和区别&#xff1a; LOGGING 定义&#xff1a;当…...

GoogleDeepMind联合发布医学领域大语言模型论文技术讲解

Towards Expert-Level Medical Question Answering with Large Language Mod 这是一篇由Google Research和DeepMind合作发表的论文,题为"Towards Expert-Level Medical Question Answering with Large Language Models"。 我先整体介绍下这篇论文的主要内容&#x…...

Spark安装、解压、配置环境变量、WordCount

Spark 小白的spark学习笔记 2024/5/30 10:14 文章目录 Spark安装解压改名配置spark-env.sh重命名&#xff0c;配置slaves启动查看配置环境变量 工作流程maven创建maven项目配置maven更改pom.xml WordCount按照用户求消费额上传到spark集群上运行 安装 上传&#xff0c;直接拖拽…...

DeepSeek-V2-Chat多卡推理(不考虑性能)

TOC 本文演示了如何使用accelerate推理DeepSeek-V2-Chat(裁剪以后的模型,仅演示如何将权值拆到多卡) 代码 import torch from transformers import AutoTokenizer, AutoModelForCausalLM, GenerationConfig from accelerate import init_empty_weights import sys from acce…...

算法题day42(补5.28日卡:动态规划02)

今天的动态规划都是二维的&#xff0c;与昨日不同。 一、刷题&#xff1a; 1.leetcode题目 62. 不同路径 - 力扣&#xff08;LeetCode&#xff09;&#xff08;medium,&#xff09; 解决&#xff1a; class Solution:def uniquePaths(self, m: int, n: int) -> int:dp …...

分治与递归

实验一&#xff1a;分治与递归 【实验目的】 深入理解分治法的算法思想&#xff0c;应用分治法解决实际的算法问题。 【实验性质】 验证性实验&#xff08;学时数&#xff1a;2H&#xff09; 【实验内容与要求】 1、设有n2k个运动员要进行网球循环赛。现要设计一个满足以…...

Spring中IOC容器

IoC IOC容器 IoC是一种设计思想&#xff0c;面向对象编程 Spring通过IoC管理所有Java对象的实例化和初始化&#xff0c;控制对象之间依赖关系 将IoC容器管理的Java对象称为Spring Bean&#xff0c;与new创建的对象没有区别 控制反转&#xff08;IoC Inversion of Controle&a…...

php redis分布式锁

一&#xff0c;概念 在PHP中实现分布式锁通常可以使用数据库、缓存系统&#xff08;如Redis&#xff09;或者其他中央存储系统来保证在分布式系统中的数据一致性与同步。秒杀下单、抢红包等等业务场景&#xff0c;都需要用到分布式锁。 常规方案大概有七中 方案一&#xff1a;…...

kotlin 中的布尔

1、kotlin中内置的Boolean类型&#xff0c;可以有true与false两个值的布尔对象。 布尔值的内置运算有&#xff08;跟很多语言如java、js一摸一样&#xff09;&#xff1a; ||——逻辑或&&——逻辑与!——逻辑非 fun main() {val a: Boolean trueval b: Boolean fa…...

有哪些ai聊天推荐?简单分享三款

有哪些ai聊天推荐&#xff1f;在当今数字化时代&#xff0c;人工智能&#xff08;AI&#xff09;聊天软件已经成为我们日常生活中不可或缺的一部分。无论是与朋友、家人还是同事交流&#xff0c;这些智能聊天软件都能为我们提供极大的便利。那么&#xff0c;市面上有哪些值得推…...

Python第二语言(十、Python面向对象(上))

目录 1. 标记变量的基础类型 2. 初识对象 2.1 使用对象组织数据 3. 成员变量 3.1 类和类成员的定义 3.2 成员变量和成员方法使用 3.3 成员方法的定义语句 4. 类和对象class Clock: def ring(self): 4.1 创建类对象的语法&#xff1a;对象名 类名称() 4.2 用生活中的…...

SolidWorks 2016 SP5安装教程

软件介绍 Solidworks软件功能强大&#xff0c;组件繁多。 Solidworks有功能强大、易学易用和技术创新三大特点&#xff0c;这使得SolidWorks 成为领先的、主流的三维CAD解决方案。 SolidWorks 能够提供不同的设计方案、减少设计过程中的错误以及提高产品质量。SolidWorks 不仅…...

为什么高考志愿只选计算机专业?

刚刚高考结束&#xff0c;不知道各位学弟学妹考的怎么样啊&#xff1f; 高考毕竟是对十二年寒窗苦读的评判&#xff0c;也是很多人改变命运的机会。很多同学每天等待出分的过程很煎熬&#xff0c;既吃不好也玩不好&#xff08;os&#xff1a;这种同学还挺多的&#xff09;。 但…...

MSI-X 虚拟化

MSI-X 虚拟化是 PCIe 设备在虚拟化环境中&#xff0c;将硬件 MSI-X 中断能力通过软件模拟、IOMMU 重映射或 SR-IOV 硬件隔离等技术&#xff0c;安全、高效地分配给多个虚拟机&#xff08;Guest&#xff09;的核心机制。它解决了传统 INTx 中断共享、MSI 向量不足的问题&#xf…...

C++编程中的死锁分析与预防策略

C编程中的死锁分析与预防策略 在C多线程编程的世界里&#xff0c;死锁是一个常见且棘手的问题。它如同交通中的十字路口堵塞&#xff0c;让程序的多个线程陷入无限等待&#xff0c;无法继续执行&#xff0c;进而影响程序的性能和稳定性。本文将深入探讨C中死锁的产生原因&#…...

车载Linux环境下C++信号处理崩溃频发?一线团队紧急封存的6条SIGSEGV防御清单,已拦截17起量产事故

第一章&#xff1a;车载Linux环境下C信号处理崩溃的典型现象与量产影响在车载Linux系统中&#xff0c;C应用常因信号处理不当引发不可恢复的崩溃&#xff0c;尤其在ASIL-B及以上安全等级的ECU中&#xff0c;此类问题可能直接导致功能降级或安全机制误触发。典型现象包括&#x…...

OpenClaw模型微调指南:用Qwen3.5-9B-AWQ-4bit优化专业领域识别

OpenClaw模型微调指南&#xff1a;用Qwen3.5-9B-AWQ-4bit优化专业领域识别 1. 为什么需要专业领域的模型微调 上周我在处理一批医疗影像报告时&#xff0c;发现OpenClaw默认的Qwen3.5模型对专业术语的识别准确率只有60%左右。当遇到"冠状动脉CTA"这样的专业描述时&…...

G-Helper终极指南:解锁华硕笔记本隐藏性能的5个秘密功能

G-Helper终极指南&#xff1a;解锁华硕笔记本隐藏性能的5个秘密功能 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting across Zephyrus, Flow, TUF, Strix, …...

保健及护理用家具市场:548.6亿元规模下的多维洞察

据恒州诚思调研统计&#xff0c;2025年全球保健及护理用家具收入规模约达466.7亿元&#xff0c;预计到2032年&#xff0c;这一数字将接近548.6亿元&#xff0c;2026 - 2032年的复合年增长率&#xff08;CAGR&#xff09;为2.5%。在医疗行业不断发展、人口结构持续变化的背景下&…...

猫抓浏览器扩展:终极网页资源嗅探工具使用完整指南

猫抓浏览器扩展&#xff1a;终极网页资源嗅探工具使用完整指南 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 猫抓&#xff08;Cat Catch&#xf…...

告别Transformer的O(n²)烦恼:手把手带你用Mamba搭建一个长文本摘要Demo

突破长文本处理瓶颈&#xff1a;基于Mamba的高效摘要系统实战指南 当面对动辄数万字的学术论文、企业年报或用户反馈文档时&#xff0c;传统Transformer模型的内存消耗会随着文本长度呈平方级增长。我曾在一个金融数据分析项目中亲历过这种困境——当输入文档超过5000字时&…...

别再折腾虚拟机了!Win10下用Geth 1.13+搭建以太坊私有链完整指南(含常见报错解决)

Windows原生环境高效搭建以太坊私有链实战手册 如果你正在寻找一份真正能解决实际问题的以太坊私有链搭建指南&#xff0c;这篇文章就是为你准备的。不同于那些只展示理想流程的教程&#xff0c;我们将直面Windows环境下最常见的报错、配置陷阱和性能瓶颈。许多开发者习惯在虚拟…...

GraalVM原生镜像与MongoDB Java驱动:构建极致性能的微服务应用

GraalVM原生镜像与MongoDB Java驱动&#xff1a;构建极致性能的微服务应用 【免费下载链接】mongo-java-driver The official MongoDB drivers for Java, Kotlin, and Scala 项目地址: https://gitcode.com/gh_mirrors/mo/mongo-java-driver 在当今云原生和微服务架构盛…...