• springboot整合redis


    创建springboot整合redis工程:

    一、springboot整合redis步骤

    首先我们要知道什么是redis:

    三步骤完成springboot对redis数据库的整合:

    1、导入springboot整合redis坐标(上面勾选的那个就是)

    2、在yml配置文件中配置redis端口号连接信息

    3、自动装配RedisTemplate对象

    补充:RedisTemplate对象提供了各种往redis数据库中存储数据的类型:

     代码演示如下所示:

    注意:下面所有的步骤,要保证Redis数据库是开启的状态,要不然肯定连接不上Redis数据库

    第一步:

     第二步:

     第三步:

    1. package com.Bivin;
    2. import org.junit.jupiter.api.Test;
    3. import org.springframework.beans.factory.annotation.Autowired;
    4. import org.springframework.boot.test.context.SpringBootTest;
    5. import org.springframework.data.redis.core.RedisTemplate;
    6. import org.springframework.data.redis.core.ValueOperations;
    7. @SpringBootTest
    8. class Springboot09RedisApplicationTests {
    9. /**
    10. * 第三步:自动装配RedisTemplate对象
    11. */
    12. @Autowired
    13. private RedisTemplate redisTemplate;
    14. /**
    15. * 首先我们知道Redis是一款key,value存储结构的数据库
    16. *
    17. * 因此我们假定这个set()测试方法以key,value的形式往Redis数据库中存储数据
    18. *
    19. * key,value形式的存储命令:set
    20. * key,value形式的取数据命令:get
    21. *
    22. */
    23. @Test
    24. void set() {
    25. ValueOperations ops = redisTemplate.opsForValue(); // 首先redisTemplate.opsForValue的目的就是表明是以key,value形式储存到Redis数据库中数据的
    26. ops.set("address1","zhengzhou");// 到这里就表明Redis数据库中存储了key为address1,value为zhengzhou的数据了(取的时候通过key取数据)
    27. }
    28. /**
    29. * 取数据
    30. */
    31. @Test
    32. void get() {
    33. ValueOperations ops = redisTemplate.opsForValue(); // 表明取的是key,value型的数据
    34. Object o = ops.get("address1"); // 获取Redis数据库中key为address1对应的value数据
    35. System.out.println(o);
    36. }
    37. }

    又因为我们知道Redis数据库支持多种格式的存储数据形式,因此还可以往Redis数据库中存储哈希类型的数据(哈希类型:就类似于一个key里面又放入一个key,value),因此Redis数据库哈希类型的储存/取数据演示如下所示:

    1. package com.Bivin;
    2. import org.junit.jupiter.api.Test;
    3. import org.springframework.beans.factory.annotation.Autowired;
    4. import org.springframework.boot.test.context.SpringBootTest;
    5. import org.springframework.data.redis.core.HashOperations;
    6. import org.springframework.data.redis.core.RedisTemplate;
    7. import org.springframework.data.redis.core.ValueOperations;
    8. @SpringBootTest
    9. class Springboot09RedisApplicationTests {
    10. /**
    11. * 第三步:自动装配RedisTemplate对象
    12. */
    13. @Autowired
    14. private RedisTemplate redisTemplate;
    15. /**
    16. * 向Redis数据库中储存哈希类型的数据(一个key里面放着一个key和value)
    17. *
    18. * 哈希类型的储存命令:put
    19. */
    20. @Test
    21. void hset() {
    22. HashOperations ops = redisTemplate.opsForHash();// 表明数据是以哈希类型的格式进行储存到Redis数据库的
    23. ops.put("info","a","aa");
    24. // 通过put命令,向Redis数据库中储存一个哈希类型的数据(一个为info的key里面放着一个key为a,value为aa的数据)
    25. }
    26. /**
    27. * 取数据
    28. *
    29. * 哈希类型的取值命令:get
    30. */
    31. @Test
    32. void hget() {
    33. HashOperations ops = redisTemplate.opsForHash(); // 表明取的是哈希类型的数据
    34. Object o = ops.get("info","a"); // 获取Redis数据库中哈希类型的数据(获取第一个key里面key为a的value数据)
    35. System.out.println(o);
    36. }
    37. }

    二、springboot读写redis的客户端(必须看)

    在上面的演示中我们知道,我们已经把Redis数据库整合到springboot了,上面我们也通过RedisTemplate对象往Redis数据库中储存了一些数据,也进行了在Redis数据库中取数据的操作,

    我们思考:我们通过该对象往Redis数据库中储存的那些数据,到底真的储存到Redis数据库中了吗? 

    我们就拿上面往Redis数据库中储存的key为address1的数据,我们用cmd判断一下Redis数据库中到底储存了该数据没有: 答案就是没有

    那么到底怎么才能把数据真正的储存到Redis数据库中呢:

    因此我们需要把第三步中的自动装配的RedisTemplate对象换成StringRedisTemplate对象即可储存成功了。(因为Redis数据库都是字符串形式的数据,所以用StringRedisTemplate对象)

     

    三、springboot操作Redis客户端实现技术切换(jedis)

    第一步:导入坐标

    第二步:配置客户端

     

    总结:(面试必备)

  • 相关阅读:
    Java泛型中的问号是什么意思
    深度学习到智能小车(1)深度学习框架
    前端培训丁鹿学堂:vue3组合式api之toRaw和customRef
    MySQL索引与事务
    【IOC,AOP】spring的基础概念
    谷粒学院——后台管理系统功能模块
    探讨 MyBatis 特殊 SQL 执行技巧与注意事项
    猿创征文|我的焚膏继晷之路
    Spring Cloud OpenFeign模版化客户端
    数据可视化大屏人员停留系统的开发实录(默认加载条件筛选、单击加载、自动刷新加载、异步加载数据)
  • 原文地址:https://blog.csdn.net/lwj_07/article/details/126265935