1、分布式缓存Redis介绍
     简介:讲解为什么要用缓存和介绍什么是Redis,新手练习工具

  

1、redis官网 https://redis.io/download
    
     2、新手入门redis在线测试工具:http://try.redis.io/

2、源码编译安装Redis4.x
     简介:使用源码安装Redis4.x和配置外网访问

1、快速安装  https://redis.io/download#installation
             wget http://download.redis.io/releases/redis-4.0.9.tar.gz
             tar xzf redis-4.0.9.tar.gz
             cd redis-4.0.9
             make

启动服务端:src/redis-server
             启动客户端:src/redis-cli

2、默认是本地访问的,需要开放外网访问
         1)打开redis.conf文件在NETWORK部分修改
            注释掉bind 127.0.0.1可以使所有的ip访问redis
            修改 protected-mode,值改为no

3、SpringBoot2.x整合redis实战讲解

简介:使用springboot-starter整合reids实战

1、官网:https://docs.spring.io/spring-boot/docs/2.1.0.BUILD-SNAPSHOT/reference/htmlsingle/#boot-features-redis
             集群文档:https://docs.spring.io/spring-data/data-redis/docs/current/reference/html/#cluster

2、springboot整合redis相关依赖引入
             <dependency>
                 <groupId>org.springframework.boot</groupId>
                 <artifactId>spring-boot-starter-data-redis</artifactId>
             </dependency>
        
         3、相关配置文件配置
             #=========redis基础配置=========
             spring.redis.database=0
             spring.redis.host=127.0.0.1
             spring.redis.port=6379
             # 连接超时时间 单位 ms(毫秒)
             spring.redis.timeout=3000

#=========redis线程池设置=========
             # 连接池中的最大空闲连接,默认值也是8。
             spring.redis.pool.max-idle=200

#连接池中的最小空闲连接,默认值也是0。
             spring.redis.pool.min-idle=200
            
             # 如果赋值为-1,则表示不限制;pool已经分配了maxActive个jedis实例,则此时pool的状态为exhausted(耗尽)。
             spring.redis.pool.max-active=2000

# 等待可用连接的最大时间,单位毫秒,默认值为-1,表示永不超时
             spring.redis.pool.max-wait=1000

4、常见redistemplate种类讲解和缓存实操(使用自动注入)

1、注入模板
             @Autowired
             private StirngRedisTemplate strTplRedis

2、类型String,List,Hash,Set,ZSet
             对应的方法分别是opsForValue()、opsForList()、opsForHash()、opsForSet()、opsForZSet()

代码示例:

RdisTestController.java:

 1 package net.xdclass.base_project.controller;
 2
 3 import net.xdclass.base_project.domain.JsonData;
 4
 5 import org.json.JSONObject;
 6 import org.springframework.beans.factory.annotation.Autowired;
 7 import org.springframework.data.redis.core.StringRedisTemplate;
 8 import org.springframework.web.bind.annotation.GetMapping;
 9 import org.springframework.web.bind.annotation.RequestMapping;
10 import org.springframework.web.bind.annotation.RestController;
11
12
13 @RestController
14 @RequestMapping("/api/v1/redis")
15 public class RdisTestController {
16
17
18     @Autowired
19     private StringRedisTemplate redisTpl; //jdbcTemplate
20
21     @GetMapping(value="add")
22     public Object add(){
23
24         //opsForValue : Returns the operations performed on simple values (or Strings in Redis terminology).
25
26         redisTpl.opsForValue().set("name", "xdclass2018");
27
28         return JsonData.buildSuccess();
29
30     }
31
32     @GetMapping(value="get")
33     public Object get(){
34
35         String value = redisTpl.opsForValue().get("name");
36         return JsonData.buildSuccess(value);
37
38     }
39
40
41
42
43
44
45 }

4、Redis工具类封装讲解和实战
     简介:高效开发方式 Redis工具类封装讲解和实战
         1、常用客户端 https://redisdesktop.com/download
         2、封装redis工具类并操作

装入对象:

 1     @GetMapping(value="save_user")
 2     public Object saveUser(){
 3         User user = new User(1,"abc","11",new Date());
 4         //String value = redisTpl.opsForValue().get("name");
 5         String userStr = JsonUtils.obj2String(user);
 6         boolean flag = redis.set("base:user:11", userStr);
 7         return JsonData.buildSuccess(flag);
 8
 9     }
10
11
12     @GetMapping(value="find_user")
13     public Object findUser(){
14
15         String userStr = redis.get("base:user:11");
16         User user = JsonUtils.string2Obj(userStr, User.class);
17
18         return JsonData.buildSuccess(user);
19
20     }

base:user:11该命名方法的内容在可视化工具中会以文件夹形式展示浏览器输入:http://localhost:8080/api/v1/redis/save_user

取值:

浏览器输入:http://localhost:8080/api/v1/redis/find_user

返回结果:

转载于:https://www.cnblogs.com/116970u/p/10258705.html

SpringBoot2.x整合Redis实战 4节课相关推荐

  1. SpringBoot2.x整合redis实战讲解

    SpringBoot2.x整合redis实战讲解 简介:使用springboot-starter整合reids实战 1.官网:https://docs.spring.io/spring-boot/do ...

  2. SpringBoot2.0整合Redis实战

    SpringBoot2.x整合Redis实战 1.分布式缓存Redis介绍 简介:讲解为什么要用缓存和介绍什么是Redis,新手练习工具 1.redis官网 https://redis.io/down ...

  3. centos mysql 实战 第一节课 安全加固 mysql安装

    centos mysql  实战  第一节课   安全加固  mysql安装 percona名字的由来=consultation 顾问+performance 性能=per  con  a mysql ...

  4. 猿创征文 | 微服务 Spring Boot 整合Redis 实战开发解决高并发数据缓存

    文章目录 一.什么是 缓存? ⛅为什么用缓存? ⚡如何使用缓存 二.实现一个商家缓存 ⌛环境搭建 ♨️核心源码 ✅测试接口 三.采用 微服务 Spring Boot 注解开启缓存 ✂️@CacheEn ...

  5. SpringBoot2.0 整合 Redis集群 ,实现消息队列场景

    本文源码 GitHub地址:知了一笑 https://github.com/cicadasmile/middle-ware-parent 一.Redis集群简介 1.RedisCluster概念 Re ...

  6. 2、SpringBoot接口Http协议开发实战8节课(7-8)

    7.SpringBoot2.x文件上传实战 简介:讲解HTML页面文件上传和后端处理实战 1.讲解springboot文件上传 MultipartFile file,源自SpringMVC 1)静态页 ...

  7. SpringMVC整合Redis实战

    项目场景: 最近开发量具管理系统,需要将用户登录信息数据暂时缓存起来,不用每次都去数据库交互,所以选择了Redis与项目集成.话不多说,直接上实战,本帖基于本人对Redis的理解上写出,与大家共同学习 ...

  8. SpringBoot2.x整合Redis 分布式集群_02

    文章目录 1. maven依赖 2. RedisConfig 3. RedisUtils 4. application.yml 5. 单元测试 6. redis 客户端查看 1. maven依赖 &l ...

  9. SpringBoot2.x整合Redis 分布式集群_01

    文章目录 一.节点分布总览 二.软件配置初始化 三.集群配置修改 3.1. redis-7002.conf 3.2. redis-7003.conf 3.3. redis-8001.conf 3.4. ...

最新文章

  1. windows文本缩放影响mfc对话框_PhotoShop创建金属文本提示技巧
  2. pythonfor循环加2_python-for循环
  3. Confluence 6 的 Crowd 设置
  4. Tensorflow LSTM时间序列预测的尝试
  5. lenze变频器怎么更改地址_S7-200 SMART PLC Modbus通信控制 V20变频器
  6. C语言学习之输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。
  7. opengl 纹理贴到对应的位置_一步步学OpenGL(27) -《公告牌技术与几何着色器》
  8. 江苏有保障的计算机应用技术,2022年江苏单招计算机应用技术专业公办学校名单...
  9. 带有Prometheus的弹簧靴和千分尺第5部分:旋转Prometheus
  10. PIXIV 爬取国际前100名代码
  11. Mac编译OpenJDK8:configure: error: Xcode 4 is required to build JDK 8, the version found was 10.1config
  12. 诺顿企业版 V11.0
  13. RS485转USB插电脑上通讯不上
  14. 小福利,介绍excel高阶函数2
  15. littleVGL开发(10):事件(EVENT)
  16. 教程篇(7.0) 05. FortiGate基础架构 IPsec安全隧道 ❀ Fortinet 网络安全专家 NSE 4
  17. 空间直角坐标系、大地坐标系、平面坐标系、高斯平面直角坐标系
  18. 用java写一个算工作日期的功能(考虑到节假日以及补班的情况)
  19. QQ互联第三方登录多应用用户登录打通
  20. 程序员如何一句话教老板做事?“我先下班了,你可要加把劲啊”

热门文章

  1. 拿到BAT等大厂offer以后,我发现了关于秋招的一些真相
  2. python中的__iter__ __reversed__ __next__
  3. 《Linux命令行与shell脚本编程大全 第3版》高级Shell脚本编程---32
  4. OPENCV学习笔记2-5_扫描图像并访问相邻像素
  5. MySQL的GROUP_CONCAT函数
  6. Web网站架构设计(转)
  7. rails采用MongoDB感觉相当不错!
  8. 四 s5p4418 Android 对can总线的支持 支持波特率修改
  9. 05 Linux快速安装 Oracle11g
  10. python telnetlib 协商_Python telnetlib:令人惊讶的问题