21 Spring Boot整合Redis

news2024/11/30 8:48:15

         

一、Redis简介
简单来说 Redis 就是一个使用 C 语言开发的数据库,不过与传统数据库不同的是 Redis 的数据是存在内存中的 ,也就是它是内存数据库,所以读写速度非常快,因此 Redis 被广泛应用于缓存方向。

另外,Redis 除了做缓存之外,Redis 也经常用来做分布式锁,甚至是消息队列。

Redis 提供了多种数据类型来支持不同的业务场景。Redis 还支持事务 、持久化、Lua 脚本、多种集群方案。

接口幂等性:防止重复提交

(在互联网API接口中,由于网络超时、手动刷新等经常导致客户端重复提交数据到服务端)比如说添加一次和添加多次结果是一样的,只会执行一次

如何防止重复提交:用注解 + AOP。通过在自定义注解里定义一些相关的字段,比如过期时间即该时间内同一用户不能重复提交请求。然后把注解按需加在接口上,最后在拦截器里判断接口上是否有该接口,如果存在则拦截。
 

目前主流的 Java 项目都在使用 Spring Boot,那么我们就来在 Spring Boot 中整合 Redis。

         Spring Boot 使用“约定大于配置”的方式逐步的取代了早起通过 XML 进行配置的方式,使得在 Spring Boot 中整合各种库或者依赖都非常的方便。

创建springboot整合redis工程:

   在我们创建 Spring Boot 项目时,选择相关的 Starter 时,在 “NoSQL” 中把 “Spring Data Redis” 项勾选即可

添加依赖

<dependency>

       <groupId>org.springframework.boot</groupId>

       <artifactId>spring-boot-starter-data-redis<artifactId>

</dependency>

配置Yml

spring:
  redis:
    # Redis服务器地址
    host: 127.0.0.1
    # Redis服务器端口号
    port: 6379
    # 使用的数据库索引,默认是0
    database: 0
    # 连接超时时间
    timeout: 1800000
    # 设置密码
    password: "123456"
    lettuce:
      pool:
        # 最大阻塞等待时间,负数表示没有限制
        max-wait: -1
        # 连接池中的最大空闲连接
        max-idle: 5
        # 连接池中的最小空闲连接
        min-idle: 0
        # 连接池中最大连接数,负数表示没有限制
        max-active: 20

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

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

相关文章

第5篇 vue的通信框架axios和ui框架-element-ui以及node.js

一 axios的使用 1.1 介绍以及作用 axios是独立于vue的一个项目&#xff0c;基于promise用于浏览器和node.js的http客户端。 在浏览器中可以帮助我们完成 ajax请求的发送在node.js中可以向远程接口发送请求 1.2 案例 二 element-ui组件 1.1 ui组件库 element-ui 是饿了么…

Unity 之 使用定时调用与Update 正常帧更新的运行答疑

文章目录 疑惑代码辨析具体解释 疑惑 就是说&#xff0c;当我们在Start 函数里面定义了一个InvokeRepeating 函数&#xff0c;那么我们又在Update 定义了一个基本操作&#xff0c;想联合控制物体一个往返的一个运动时&#xff0c;我们应该怎么办&#xff1f; 就是说系统是怎么…

【2023数学建模国赛】A题定日镜场的优化设计模型建立

2023年全国大学生数学建模竞赛A题定日镜场的优化设计&#xff0c;目前已写出第四版国赛A题思路和模型详细公式&#xff0c;目录如下&#xff1a; 一、 问题重述... 1 二、 问题分析... 1 三、 模型假设... 6 四、 问题一模型的建立和求解... 6 4.1 定日镜场坐标系的建立...…

安全测试 —— 你了解WEB安全测试吗?

&#x1f60f;作者简介&#xff1a;博主是一位测试管理者&#xff0c;同时也是一名对外企业兼职讲师。 &#x1f4e1;主页地址&#xff1a;【Austin_zhai】 &#x1f646;目的与景愿&#xff1a;旨在于能帮助更多的测试行业人员提升软硬技能&#xff0c;分享行业相关最新信息。…

UG\NX二次开发 已知3x3矩阵分别求XYZ方向 UF_MTX3_x_vec、UF_MTX3_y_vec、UF_MTX3_z_vec

文章作者:里海 来源网站:王牌飞行员_里海_里海NX二次开发3000例,里海BlockUI专栏,C\C++-CSDN博客 简介: UG\NX二次开发 已知3x3矩阵分别求XYZ方向 UF_MTX3_x_vec、UF_MTX3_y_vec、UF_MTX3_z_vec 效果: 代码: #include "me.hpp"void ufusr(char* param,…

我眼中的《视觉测量技术基础》

为什么会写这篇博客&#xff1a; 首先给大家说几点&#xff1a;看我的自我介绍对于学习这本书没有任何帮助&#xff0c;如果你是为了急切的想找一个视觉测量的解决方案那可以跳过自我介绍往下看或者换一篇博客看看&#xff0c;如果你是刚入门想学习计算机视觉的同学&#xff0…

YOLOv8 目标检测及图片裁剪

前言 之前我们已经训练了识别是否佩戴口罩的模型文件&#xff0c;可以有效识别人群是否口罩&#xff0c;本文将会讲解如何将识别到的目标裁剪出来 目标识别 需要指定 save_txtTrue&#xff0c;保存数据标注文件 txt yolo predict modelruns/detect/train26/weights/best.pt…

一文带你快速入门『YOLOv8』

前言 本文是 YOLOv8 入门指南&#xff08;大佬请绕过&#xff09;&#xff0c;将会详细讲解安装&#xff0c;配置&#xff0c;训练&#xff0c;验证&#xff0c;预测等过程 YOLOv8 官网&#xff1a;ultralytics/ultralytics: NEW - YOLOv8 &#x1f680; in PyTorch > ONN…

AjaxJavaScriptcss模仿百度一下模糊查询功能

1、效果 如下图所示&#xff0c;我们在输入大学时&#xff0c;程序会到后端查询名字中包含大学的数据&#xff0c;并展示到前端页面。 用户选择一个大学&#xff0c;该大学值会被赋值到input表单&#xff0c;同时关闭下拉表单&#xff1b; 当页面展示的数据都不符合条件时&…

华为云云耀云服务器L实例评测|基于云服务器的minio部署手册

华为云云耀云服务器L实例评测|基于云服务器的minio部署手册 【软件安装版本】【集群安装&#xff08;是&#xff09;&#xff08;否&#xff09;】 版本 创建人 修改人 创建时间 备注 1.0 jz jz 2023.9.2 minio华为云耀服务器 一. 部署规划与架…

Python程序设计实例 | 条形码图片识别

* 本系列推文案例中&#xff0c;建议Python采用3.10及以上版本&#xff0c;NumPy采用1.22.3及以上版本&#xff0c;Matplotlib采用3.5.1及以上版本&#xff0c;Pandas采用1.4.2及以上版本。Python从3.10这个版本开始&#xff0c;标准发行版本中自带的IDLE交互式环境中输入提示符…

腾讯云和阿里云2核2G服务器租用价格表对比

2核2G云服务器可以选择阿里云服务器或腾讯云服务器&#xff0c;腾讯云轻量2核2G3M带宽服务器95元一年&#xff0c;阿里云轻量2核2G3M带宽优惠价108元一年&#xff0c;不只是轻量应用服务器&#xff0c;阿里云还可以选择ECS云服务器u1&#xff0c;腾讯云也可以选择CVM标准型S5云…

JS中 bind()的用法,call(),apply(),bind()异同点及使用,如何手写一个bind()

✨什么是bind() bind()的MDN地址 bind() 方法创建一个新函数&#xff0c;当调用该新函数时&#xff0c;它会调用原始函数并将其 this 关键字设置为给定的值&#xff0c;同时&#xff0c;还可以传入一系列指定的参数&#xff0c;这些参数会插入到调用新函数时传入的参数的前面。…

项目(智慧教室)第五部分,Zigbee采集控制功能实现

一。IAR工程针对Zigbee的修改 补充&#xff1a;硬件配置 &#xff08;1&#xff09;拨码开关拨到公口处&#xff0c;协调器的连接 &#xff08;2&#xff09;协调器的烧写&#xff08;Zigbee协调器也需要烧写&#xff09; &#xff08;4&#xff09;温湿度模块的烧写 1.寻找Z…

工具 | XShell的学习与使用

工具 | XShell的学习与使用 时间&#xff1a;2023年9月8日09:03:29 文章目录 工具 | XShell的学习与使用1.下载2.安装 1.下载 1.官网XSHELL - NetSarang Website 2.免费版下载&#xff1a;家庭/学校免费 - NetSarang Website (xshell.com) 3.https://cdn.netsarang.net/de06d10…

LabVIEW检测润滑油中的水分和铁颗粒

LabVIEW检测润滑油中的水分和铁颗粒 润滑油广泛应用于现代机械设备&#xff0c;由于工作环境日益恶劣&#xff0c;润滑油经常被水分乳化&#xff0c;加速对机械设备的腐蚀。此外&#xff0c;润滑油还受到机械零件摩擦中产生的Fe颗粒的污染&#xff0c;削弱了其机械润滑效果。润…

mobaXterm使用pycharm

首先去pycharm的官网PyCharm: the Python IDE for Professional Developers by JetBrains 下载pycharm&#xff08;选择linux的community版本即可&#xff09; 下载后的压缩包拖拽到mobaXterm如下位置&#xff1a; 进入压缩包所在的文件夹&#xff08;图中这个位置是root目录&…

docker镜像 容器 仓库

docker镜像 Docker 运行容器前需要本地存在对应的镜像&#xff0c;如果本地不存在该镜像&#xff0c;Docker会从镜像仓库下载该镜像。 获取镜像 Docker Hub 上有大量的高质量的镜像可以用&#xff0c;这里我们就说一下怎么获取这些镜像。 从 Docker 镜像仓库获取镜像的命令…

中科驭数KPU FLEXFLOW®-2100R RDMA加速DPU卡正式发布,下一代数据中心互联的“超级高速公路”

2023服贸会期间&#xff0c;中科驭数重磅推出最新自研的高性能网络“利器”——KPU FLEXFLOW-2100R RDMA加速DPU卡。这款产品的发布标志着中科驭数在高性能计算和数据中心领域的不断创新&#xff0c;旨在面向高速网络、高性能存储搭建起算力集群内部通信的"超级高速公路”…

【前端】在Vue页面中引入其它vue页面 数据传输 相互调用方法等

主页面 home 从页面 headView 需求 在 home.vue 中引用 headView.Vue 方案: home.vue 代码: 只需要在home.vue 想要的地方添加 <headView></headView> <script>//聊天页面 import headView /view/headView.vueexport default {components: {headView},…