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

SpringBoot开发——整合Redis

文章目录

  • 1、创建项目,添加Redis依赖
  • 2、创建实体类Student
  • 3、创建Controller
  • 4、配置application.yml
  • 5、整合完成

Redis ( Remote Dictionary Server )是一个开源的内存数据库,遵守 BSD 协议,它提供了一个高性能的键值( key - value )存储系统,常用于缓存、消息队列、会话存储等应用场景。
SpringBoot整合 Redis流程如下:

1、创建项目,添加Redis依赖

创建Springboot项目,添加Redis依赖
添加依赖后,pom.xml内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.3.3</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com</groupId>
    <artifactId>redis</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>redis</name>
    <description>redis</description>
    <url/>
    <licenses>
        <license/>
    </licenses>
    <developers>
        <developer/>
    </developers>
    <scm>
        <connection/>
        <developerConnection/>
        <tag/>
        <url/>
    </scm>
    <properties>
        <java.version>22</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <!-- redis -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>
        <!-- 连接池 -->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-pool2</artifactId>
        </dependency>
        
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <excludes>
                        <exclude>
                            <groupId>org.projectlombok</groupId>
                            <artifactId>lombok</artifactId>
                        </exclude>
                    </excludes>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>

2、创建实体类Student

创建包com.redis.entity,创建实体类Student

package com.redis.entity;

import lombok.Data;

import java.io.Serializable;
import java.util.Date;

@Data
public class Student implements Serializable {
    private Long id;
    private String name;
    private Double score;
    private Date birthday;
}

3、创建Controller

创建包com.redis.controller,创建类StudentController

package com.redis.controller;

import com.redis.entity.Student;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.*;

@RestController
public class StudentController {

    @Autowired
    private RedisTemplate redisTemplate;
    
    @PostMapping("/set")
    public void set(@RequestBody Student student){
        redisTemplate.opsForValue().set("stu",student);
    }
    
    @GetMapping("/get/{key}")
    public Student get(@PathVariable("key") String key){
        return (Student) redisTemplate.opsForValue().get(key);
    }
    
    @DeleteMapping("/delete/{key}")
    public boolean delete(@PathVariable("key") String key){
        redisTemplate.delete(key);
        return redisTemplate.hasKey(key);
    }
}

4、配置application.yml

application.yml内容如下:

spring:
  data:
    redis:
      database: 0
      host: localhost
      port: 6379

5、整合完成

整合完成,快来试试吧。


http://www.kler.cn/news/303705.html

相关文章:

  • 鸿蒙NEXT(API 12)【蓝牙设置】 网络开发
  • 基于SpringBoot+Vue+MySQL的笔记记录分享网站
  • “阡陌云旅”黄河九省文化旅游平台
  • solidity-19-fallback
  • LeetCode之二叉搜索树
  • uniapp登录页面( 适配:pc、小程序、h5)
  • Leetcode面试经典150题-349.两个数组的交集
  • 设计模式 -- 单例设计模式
  • 新能源汽车 BMS 学习笔记篇—BMS 基本定义及分类
  • Kubernetes+Minio+Velero:终极备份解决方案
  • 汽车无钥匙启动功能工作原理
  • 产学研合作赋能产业升级新动能
  • 【单片机仿真】基于51单片机的宠物喂食系统设计
  • 8个前端库-小且美
  • 【Qt】Qml界面中嵌入C++ Widget窗口
  • 万界星空科技电池MES具体功能及解决方案
  • Go 语言的优势
  • 【油猴脚本】00005案例 Tampermonkey油猴脚本动态渲染表格列,列的值,“默认无值”
  • 【C++算法】分治——归并
  • Golang path/filepath包详解:高效路径操作与实战案例
  • 《论面向方面的编程技术及其应用》写作框架,软考高级系统架构设计师
  • 在OpenEuler(欧拉)系统上用kubeadm部署(k8s)Kubernetes集群
  • 【运维监控】系列文章汇总索引
  • linux_L1_linux重启服务器
  • MySQL字符集的转换
  • Integer 缓存
  • Three.js 实战【4】—— 3D地图渲染
  • 【Linux 从基础到进阶】Docker 容器技术基础与应用
  • MySQL事务【后端 13】
  • triton之ttir学习