SpringBoot集成Redis的环境部署以及操作Redis

这篇具有很好参考价值的文章主要介绍了SpringBoot集成Redis的环境部署以及操作Redis。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Spring Boot 集成Redis

1.环境配置

  1. 添加redis依赖
    在老项目添加,可以在pom.xml文件直接添加,通过edit starters插件在plugins可以下载
    SpringBoot集成Redis的环境部署以及操作Redis,JavaEE,spring boot,redis,数据库
    搜索redis,选择第一个点击add如何点击ok,即可。如果创建新项目,可以直接在创建时搜索redis依赖添加

SpringBoot集成Redis的环境部署以及操作Redis,JavaEE,spring boot,redis,数据库

  1. 配置连接信息,host为连接的地址,port为端口号默认为6379,database选择的数据库不屑默认为0.

redis连接配置信息
spring.redis.host=124.221.76.124
不写默认端口号为6379,数据库为0
spring.redis.database=15
spring.redis.port=6379

2.操作Redis

2.1 代码形式操作Redis

首先创建RedisController类进行redis的写操作

package com.example.sp_redis.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;

/**
 * @author zq
 * @date 2023-07-26 13:15
 */

@RestController
public class RedisContoller {
    //1.引入redis模板(redis本身)
    @Resource
    private StringRedisTemplate stringRedisTemplate;

    @RequestMapping("/set")

    public String setRedis(){
        stringRedisTemplate.opsForValue().set("username","zq");
        return "redis写操作";
    }
}

访问localhost:8080/set,打开我们的redis客户端,发现我们的数据库15成功写入username:zq

SpringBoot集成Redis的环境部署以及操作Redis,JavaEE,spring boot,redis,数据库

SpringBoot集成Redis的环境部署以及操作Redis,JavaEE,spring boot,redis,数据库

关于redis客户端,可以在官网下载。我们可以在自己的云服务器上下载redis,然后在redis.conf文件中注释掉bind 127.0.0.1并且将“protected-mode yes” 改为“protected-mode no”;具体操作可以查看我的关于Redis的安装与配置的博客。

关于Redis的安装与配置

接下来进行Redis的读操作:

 @RequestMapping("/get")
    public String getRedis(){
        String res = stringRedisTemplate.opsForValue().get("username");
        return res;
    }

访问地址:

SpringBoot集成Redis的环境部署以及操作Redis,JavaEE,spring boot,redis,数据库

注意:在我们进行Redis写的操作时,set()存在第三个参数,就是过期时间,我们可以设置存储数据多久过期,所以如果此时你读取不到数据,那么可能就是数据过期了可以尝试重新存储或者设置一个较长的过期时间。

2.2 使用注解方式操作Redis

主要有以下几种注解:

  • @Cacheable:查询/添加,判断redis是否有缓存,如果没有就将当前方法返回值存入redis中,如果存在就直接返回。
  • @CachePut:修改,将方法返回值更新到redis缓存中。
  • @CacheEvict:删除,将redis中对应的缓存删除。

首选我们要开启全局注解缓存,在启动类上加@EnableCaching

然后新建一个类进行注解式操作redis

查询或者添加的操作如下:

package com.example.sp_redis.controller;

import org.springframework.cache.annotation.CacheEvict;
import org.springframework.cache.annotation.CachePut;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class RedisAnnotationController {

    /**
     * 存入或读取缓存
     * @param name
     * @param pnumber
     * @return
     */
    @RequestMapping("/ann-get")
//    注意多个参数时如何设置
    @Cacheable(value = "spring.cache",key = "#name+#pnumber")
    public String get(String name,String pnumber){
        if (!StringUtils.hasLength(name)||!StringUtils.hasLength(pnumber)){
            return null;
        }
        return "name=" +name+"|pnumber=" +pnumber;

    }

}

实现结果如下,成功存入了数据;

SpringBoot集成Redis的环境部署以及操作Redis,JavaEE,spring boot,redis,数据库

进行删除操作:

 @RequestMapping("/del")
    @CacheEvict(value = "spring.cache", key =  "#name+#pnumber")
    public String del(String name,String pnumber){

        return "delete success";
    }

进行缓存的更新操作:

 @CachePut(value = "spring.cache",key = "#name+'-'+#pnumber")
    @RequestMapping("/put")
    public String put(String name,String pnumber){
        if (!StringUtils.hasLength(name)||!StringUtils.hasLength(pnumber)){
            return null;
        }
        System.out.println("执行了put方法");
        return "name=" +name+"->>"+"pnumber="+pnumber;
    }

我们修改数据存储格式执行put方法之后,再次执行个体方法,可以发现缓存改变了

put方法结果

SpringBoot集成Redis的环境部署以及操作Redis,JavaEE,spring boot,redis,数据库

get方法结果:

SpringBoot集成Redis的环境部署以及操作Redis,JavaEE,spring boot,redis,数据库

注意:当我们多次执行get方法时,我们会发现控制台就输出了一次执行get方法,因为我们缓存中已经有了数据。之后的get方法就是直接从缓存中取数据。文章来源地址https://www.toymoban.com/news/detail-613115.html

到了这里,关于SpringBoot集成Redis的环境部署以及操作Redis的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【华为云】基于华为云欧拉操作系统(HCE OS)容器化部署传统应用(Redis+Postgresql+Git+SpringBoot+Nginx)

    博文内容为 华为云欧拉操作系统入门级开发者认证(HCCDA – Huawei Cloud EulerOS) 实验笔记整理 认证地址:https://edu.huaweicloud.com/certificationindex/developer/9bf91efb086a448ab4331a2f53a4d3a1 博文内容涉及一个传统 Springboot 应用HCE部署, 以及相关数据库 Redis、Postgresql、Nginx 的容器化部署 理解不

    2024年02月22日
    浏览(47)
  • 【SpringBoot】| SpringBoot 集成 Redis

    目录 一:SpringBoot 集成 Redis  二:对比 StringRedisTemplate 和 RedisTemplate   图书推荐:《MySQL 8查询性能优化》 tips:前些天突然发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家,感兴趣的同学可以点击网站进行学习 人工智能学习网站 ① Redis是

    2024年02月07日
    浏览(26)
  • SpringBoot 集成 Redis

    本地Java连接Redis常见问题: bind配置请注释掉 保护模式设置为no Linux系统的防火墙设置 redis服务器的IP地址和密码是否正确 忘记写访问redis的服务端口号和auth密码 Jedis Client是Redis官网推荐的一个面向java客户端,库文件实现了对各类API进行封装调用。 1、pom.xml 2、测试 Lettuce是一

    2024年02月14日
    浏览(58)
  • SpringBoot集成Redis及Redis使用方法

    目录 应用背景 Redis简介 更新问题 一:环境配置 1.1: 在pom.xml文件中添加依赖 1.2:配置SpringBoot核心配置文件application.properties 二:在Config文件夹中创建RedisConfig配置文件类 2.1:RedisTemplate中的几个角色: 2.2:为什么要自定义序列化: 2.2.1:Spring 中提供了以下几个序列化器: 四

    2024年02月13日
    浏览(27)
  • SpringBoot3集成Redis

    目录 一、简介 二、工程搭建 1、工程结构 2、依赖管理 3、Redis配置 三、Redis用法 1、环境搭建 2、数据类型 3、加锁机制 四、Mybatis缓存 1、基础配置 2、自定义实现 五、参考源码 标签:Redis.Mybatis.Lock; 缓存在项目开发中,基本上是必选组件之一,Redis作为一个 key-value 存储系

    2024年02月13日
    浏览(27)
  • 【极光系列】springboot集成redis

    tips:主要用于快速搭建环境以及部署项目入门 1.下载资源包 2.配置环境变量 3.启动redis服务 4.设置密码 配置路径在解压目录下:E:redisredis.windows.conf,在配置文件中找到 # requirepass foobared,然后在下面增加一行requirepass 后面即是你需要定义的密码,我定义的是aurora:requirepa

    2024年01月16日
    浏览(25)
  • SpringBoot集成Redis及问题解决

    此篇文章为SpringBoot集成Redis的简单介绍,依赖、序列化操作、工具类都可以在后面的实操中直接搬运使用或者在此基础上进行改进使用 1、集成Redis 1.1、新建SpringBoot项目 新建项目这边就不一一介绍了,大家如果还有不会的可以自行搜索 这边主要贴一下这个demo的依赖以及app

    2023年04月11日
    浏览(26)
  • springboot如何集成redis哨兵集群?

    redis主从集群和redis sentinel集群都配置完毕了, 现在我们需要了解spring boot 如何连接上该集群 才能用上这两个集群带来的便利 为什么需要关注这个问题? 怎么配置? 记住. 本章是针对redis已经配置了主从集群和哨兵集群的, 而非cluster集群模式 没有 Redis Sentinel 架构之前,如果主节

    2024年02月09日
    浏览(41)
  • SpringBoot集成Redis使用Lettuce

            Redis是最常用的KV数据库,Spring 通过模板方式(RedisTemplate)提供了对Redis的数据查询和操作功能。本文主要介绍基于RedisTemplate + lettuce方式对Redis进行查询和操作的案例。 一、Redis基础数据类型         首先对redis来说,所有的key(键)都是字符串。我们在谈基

    2024年02月05日
    浏览(43)
  • 【Redis】Redis 的学习教程(七)之 SpringBoot 集成 Redis

    在前几篇文章中,我们详细介绍了 Redis 的一些功能特性以及主流的 java 客户端 api 使用方法。 在当前流行的微服务以及分布式集群环境下,Redis 的使用场景可以说非常的广泛,能解决集群环境下系统中遇到的不少技术问题,在此列举几个使用 Redis 经常用到的功能: 分布式缓

    2024年02月10日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包