首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SpringBoot Redis简单理解

SpringBoot Redis简单理解

作者头像
小锋学长生活大爆炸
发布2020-09-16 14:41:08
5460
发布2020-09-16 14:41:08
举报

释疑

为什么使用缓存

  • 缓存是在内存中存储的数据备份,当数据没有发生本质变化时,就可以直接从内存中查询数据,而不用去数据库查询(在磁盘中)
  • CPU读取内存的速度要比读取磁盘,可以提高效率

Redis缓存

  • Remote Dictionnary Server(远程数据服务,Redis),是一款内存高速缓存数据库。
  • 五种常用数据类型: String(字符串)、List(列表)、Set(集合)、Hash(散列)、ZSet(有序集合)
  • 可持久化:一边运行,一边向硬盘备份一份,防止断电等偶然情况,导致内存中数据丢失

可参考:从入门到精通-Redis

在这里插入图片描述
在这里插入图片描述

Redis可视化管理工具

 可视化管理redis的界面工具:RedisDesktopManager,官方下载链接:https://redisdesktop.com/download  河蟹版:https://tanyh.lanzous.com/icdp3ud


Redis命令大全

http://www.redis.cn/commands.html


配置redis

1、在pom中配置redis的相关依赖包:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-redis</artifactId>
    <version>1.3.8.RELEASE</version>
</dependency>

2、在application.yml里面配置redis的配置项

spring:
  ## Redis 配置
  redis:
    ## Redis数据库索引(默认为0)
    database: 0
    ## Redis服务器地址
    host: 192.168.126.129
    ## Redis服务器连接端口
    port: 6379
    ## Redis服务器连接密码(默认为空)
    password:
    jedis:
      pool:
        ## 连接池最大连接数(使用负值表示没有限制)
        #spring.redis.pool.max-active=8
        max-active: 8
        ## 连接池最大阻塞等待时间(使用负值表示没有限制)
        #spring.redis.pool.max-wait=-1
        max-wait: -1
        ## 连接池中的最大空闲连接
        #spring.redis.pool.max-idle=8
        max-idle: 8
        ## 连接池中的最小空闲连接
        #spring.redis.pool.min-idle=0
        min-idle: 0
    ## 连接超时时间(毫秒)
    timeout: 1200

使用redis

 项目操作redis是使用的RedisTemplate方式,另外还可以完全使用JedisPool和Jedis来操作redis。 直接看这篇吧,蛮详细的: SpringBoot整合Redis、mybatis实战,封装RedisUtils工具类,redis缓存mybatis数据

其他

对于Redis的五大常用数据类型都提供了方法

  • stringRedisTemplate.opsForValue();[String(字符串)]
  • stringRedisTemplate.opsForList();[List(列表)]
  • stringRedisTemplate.opsForSet();[Set(集合)]
  • stringRedisTemplate.opsForHash();[Hash(散列)]
  • stringRedisTemplate.opsForZSet();[ZSet(有序集合)]

 StringTemplate类中方法存取的key-value值是String类型,RedisTemplate中key-value值是Object类型,RedisTemplate是StringTemplate父类

@SpringBootTest
class SpringbootdemoApplicationTests {
    @Autowired
    StringRedisTemplate stringRedisTemplate; //操作key-value都是字符串,最常用
    @Test
    public void test01(){
        //字符串操作
        stringRedisTemplate.opsForValue().append("msg","coder");

        //列表操作
        stringRedisTemplate.opsForList().leftPush("mylist","1");
        stringRedisTemplate.opsForList().leftPush("mylist","2");
    }
}

实战

Redis高级项目实战

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-09-14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 释疑
    • 为什么使用缓存
      • Redis缓存
      • Redis可视化管理工具
      • Redis命令大全
      • 配置redis
      • 使用redis
      • 其他
      • 实战
      相关产品与服务
      云数据库 Redis
      腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档