当前位置:   article > 正文

springboot整合redis_springboot redis

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)

第一步:导入坐标

第二步:配置客户端

 

总结:(面试必备)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/152133
推荐阅读
相关标签
  

闽ICP备14008679号