当前位置: 首页 > news >正文

极简Redis速成学习

redis是什么?

是一种以键值对形式存储的数据库,特点是基于内存存储,读写快,性能高,常用于缓存、消息队列等应用情境

redis的五种数据类型是什么?

分别是String、Hash、List、Set和Zset(操作命令很多这里只写部分关键的,其他查一查即可)

①String类型



redis中最基本的数据结构,key是String类型,value可以存储字符串、整型或浮点数

SET <KEY> <VALUE>    //写入
GET <KEY>    //读取
②Hash类型 



在value部分提供了一个field作为value的键,因此一个Hash可以存储多个字段和对应的值,适合用来存储对象

HSET <KEY> <FIELD> <VALUE>    //写入
HGET <KEY> <FIELD>        //读取
③List类型

有序可重复,相当于LinkedList,可以从列表的两端进行插入或删除

LPUSH <KEY> <ELEMENT>    //从列表左边插入
LPOP <KEY>        //移除左侧第一个元素
右侧同理,用RPUSH和RPOP
④Set类型

无序不重复

SADD <KEY> <MEMBER>...     //添加一个或多个
SREM <KEY> <MEMBER>...     //删除一个或多个
SCARD <KEY>      //返回元素个数
⑤Zset类型

有序集合,每个元素都带有一个score属性,用score来排序

ZADD <KEY> <SCORE> <MEMBER>...     //添加一个或多个
ZREM <KEY> <MEMBER>...     //删除一个或多个
ZSCORE <KEY> <MEMBER>      //获取指定元素的score值

在Java中怎么使用redis?

我们会用RedisTemplate

使用方法:
①导入依赖

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

②在application.yml中配置redis

spring:
   redis:
      host:127.0.0.1  # Redis服务器地址
      port:6379   # Redis服务器连接端口
      password:    # Redis服务器连接密码(默认为空)
      lettuce:
        pool:
          max-active:8  #最大连接
          max-idle:8  #最大空闲连接
          min-idle:0   #最小空闲连接
          max-wait:100  #连接等待时间

③在你要的文件中注入RedisTemplate

@Autowired
private RedisTemplate redisTemplate

 ④代码实例

redisTemplate.opsForValue.set(key,value);   //存
String id = redisTemplate.opsForValue.get(key);   //取

可以在存数据的时候设置超时时间,避免因为只存出现内存不足的情况(如果不引入超时删除,就会出现redis只存不删的情况,时间长了内存会爆)

redisTemplate.opsForValue.set(key,value,超时时间,超时单位);   //存

可以给已有的键值对设置过期时间

redisTemplate.expire(key,超时时间,超时单位);   

相关文章:

  • 【Mysql】:如何恢复误删的数据?
  • Spring Boot 启动与 Service 注入的 JVM 运行细节
  • MySQL慢查询分析与处理
  • Basler acA1920-40gc
  • RabbitMQ 学习路线与知识总结
  • Opencv 阈值与平滑处理
  • 京东外卖举办首批全职骑手代表签约仪式
  • az devops login报错:Failed to authenticate using the supplied token.
  • 广义表(C语言代码链式存储结构)
  • Linux基础33-C语言篇之字符串的基础操作【入门级】
  • 浅入浅出Selenium DevTools
  • 【数据结构】_顺序表
  • SringAop
  • 互联网医院实时数据监测智能分析系统设计概述(上)
  • 基于springboot后台管理的校园网站系统(源码+lw+部署文档+讲解),源码可白嫖!
  • 【HarmonyOS NEXT】控制 WebP 格式动图播放次数的实现方案
  • 【Prometheus】prometheus服务发现与relabel原理解析与应用实战
  • 如何用 Python 进行机器学习
  • python学习七
  • linux上搭建Lago并部署
  • 长白山网站学做管理平台/友博国际个人中心登录
  • 彩票娱乐网站建设开发/太原竞价托管公司推荐
  • 网站网址怎么做二维码/百度快照下载
  • 网站建设系统公司/郑州网站定制
  • 黑河网站seo/怎样把广告放到百度
  • 网站建设网上售票系统/福建seo顾问