Spring Boot框架——整合Redis

  互联网的快速发展,传统的关系型数据库,已经无法完全应对复杂的业务场景,这就兴起了非关系型的数据库。当下主流的非关系型数据库包括:MongoDB、Redis等。

今天主要记录下SpringBoot 整合Redis数据库。

  Redis,基于内存进行存储,支持key-value的存储形式,结构非常简单,没有数据表的概念,直接用键值对的形式完成数据的管理,底层使用C语言编写的。

Redis支持5中数据类型:

  字符串

  列表

  集合

  有序集合

  哈希

Redis的下载安装,可以参考我的另一篇博客(https://www.cnblogs.com/zuichao/p/9797287.html)。

SpringBoot 整合Redis,简单实例:

1、添加pom依赖

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

    <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>

    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
    </dependency>
</dependencies>

 

2、添加配置文件

redis:
  database: 0
  host: localhost
  port: 6379

 

3、创建实体类,必须实现序列化接口

package com.sunjian.entity;

import lombok.Data;

import java.io.Serializable;

/**
 * @author sunjian
 * @date 2020/3/27 22:30
 */
@Data
public class Student implements Serializable {
    private Integer id;
    private String name;
}

 

4、编写controller视图类

package com.sunjian.controller;

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

/**
 * @author sunjian
 * @date 2020/3/27 22:36
 */
@RestController
public class StudentController {

    @Autowired
    private RedisTemplate redisTemplate;

    /**
     * 增加、修改
     * @param student
     */
    @PostMapping("/set")
    public void set(@RequestBody Student student) {
        redisTemplate.opsForValue().set("stu", student);
    }

    /**
     * 查找
     * @param key
     * @return
     */
    @GetMapping("/get/{key}")
    public Student get(@PathVariable("key") String key){
        Student student = (Student) redisTemplate.opsForValue().get(key);
        return student;
    }

    /**
     * 删除
     * @param key
     * @return
     */
    @GetMapping("/delete/{key}")
    public boolean delete(@PathVariable("key") String key){
        redisTemplate.delete(key);
        return redisTemplate.hasKey(key);
    }
}

 

5、启动本地的Redis服务

  

 

6、启动Application类,访问

package com.sunjian;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/**
 * @author sunjian
 * @date 2020/3/26 17:31
 */
@SpringBootApplication
public class SbootApplication {

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

}

 

7、postman测试,http://localhost:7777/set

  

 

 

 

   get

  

 

 

   delete

  

 

 

  

 

下一篇学习Spring Boot整合Redis的5中数据类型的具体用法。

OK.

posted on 2020-03-30 09:00  乘除减加  阅读(408)  评论(0)    收藏  举报

导航

作者:乘除减加 出处: 本文版权归 乘除减加 所有,欢迎转载但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。如有问题,可以微信:15510211823 联系我,非常感谢。