day49 redis安装、Another-Redis-Desktop-Manager & redis数据类型 &集成redis(jedis)

关系型数据库

MySQL、SQL Server、Oracle、postgre SQL(pg)

数据存储位置:硬盘
数据存储结构:行和列
优点:可以实现更复杂的业务逻辑(事务、存储过程、索引)、持久化
保存哪种类型的数据:所有

非关系型数据库(NoSQL)

redis、mongoDB

数据存储位置:内存
数据存储结构:键值对
优点:读写速度快
保存哪种类型的数据:1.查询频繁 且 数据一致性要求低
2.缓存的对象信息

使用redis

1.双击redis-server.exe,将出现的窗口最小化
image
2.测试连接:win+r=》cmd
进入保存redis的目录下
image
3.下载Another-Redis-Desktop-Manager使用redis

redis常用命令

SELECT index 选择指定下标的数据库,redis默认数据库从DB0-DB15
DBSIZE 当前库中key的个数
KEYS * 查看所有key的列表
EXPIRE key seconds 设置key的过期时间,单位秒
DEL key 删除key
EXISTS key 检查指定key是否存在
TYPE key 返回key的存储类型
RENAME key newkey 重命名key
RENAMENX key newkey 仅当 newkey 不存在时,将 key 改名为 newkey
FLUSHDB 清空当前数据库
FLUSHALL 清空所有数据库

redis数据类型

1 String字符串

SET key value 赋值,设置key的值
SETNX key value 只有在key不存在时,设置 key 的值(可用来做分布式锁)
SETEX key seconds value 设置kv键值对,并设置失效时间 (以秒为单位)
APPEND key value 如果 key 已经存在并且是一个字符串, APPEND 命令将指定的 value 追加到该 key 原来值(value)的末尾
GET key 取值,获取key的值

2 Hash哈希表

Redis的hash 是一个 string 类型的 field(字段) 和 value 的映射表,
hash 特别适合用于存储对象,类似于java里面的Map<String, Object>

HSET key field value 将哈希表key中的字段field的值设为value
HMSET key field1 v1 field2 v2 给哈希表key中添加多个字段(field-value)
HSETNX key field value 只有在字段 field不存在时,设置哈希表字段的值
HKEYS key 获取哈希表中的所有字段
HVALS key 获取哈希表中的所有值
HMGET key field1 field2 获取所有指定字段的值
HLEN key 获取哈希表中字段的数量
HEXISTS key field 查看哈希表 key 中,指定的字段是否存在
HDEL key field1 field2 删除一个或多个哈希表字段

3 List列表

Redis列表是简单的字符串列表,按照插入顺序排序。
你可以添加一个元素到列表的头部(左边)或者尾部(右边)。
他的底层实现是个链表,链表可以两端双向插入。
一个列表最多可以包含 232-1 个元素(42,9496,7295)

LINDEX key index 通过索引获取列表中的元素
LLEN key 获取列表长度
LPUSH key value1 value2 将一个或多个值插入到列表头部,如果列表不存在则创建
LPUSHX key value 将一个值插入到已存在的列表头部
LRANGE key start stop 获取列表指定范围内的元素,包括开始位置和结束位置的元素
LREM key count value 移除列表元素,count移除元素的个数,从列表头开始
LSET key index value 通过索引设置列表元素的值,如果列表不存在则报错
LTRIM key start stop 对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除。
RPOP key 移除列表的最后一个元素,返回值为移除的元素。
RPUSH key value1 value2 在列表中添加一个或多个值
RPUSHX key value 为已存在的列表添加值

4 Set集合

Redis 的 Set 是 String 类型的无序集合,集合成员是唯一的,Set集合中的元素无序不可重复。

SADD key v1 [v2] 向集合添加一个或多个字符串,如果集合不存在则创建集合
SCARD key 获取集合的成员数
SISMEMBER key member 判断 member 元素是否是集合 key 的成员
SMEMBERS key 返回集合中的所有成员
SREM key member1 [member2] 移除集合中一个或多个成员
SSCAN key cursor MATCH [pattern] [COUNT] 迭代集合:#从索引1开始查询2个能够匹配a的字段 SSCAN set1 1 match a count 2

5 Sorted Set有序集合zset

Redis 有序集合和集合一样也是 string 类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个 double 类型的分数。redis 正是通过分数来为集合中的成员进行从小到大的排序。
sorted set中的元素有序不可重复。
有序集合的成员是唯一的,但分数(score)却可以重复。

ZADD key score1 member1 [score2 member2] 向有序集合添加一个或多个成员,或者更新已存在成员的分数,score 分数,member 成员
ZCARD key 获取有序集合的成员数
ZRANK key member 返回有序集合中指定成员的索引
ZREM key member [member ...] 移除有序集合中的一个或多个成员
ZSCORE key member 返回有序集中,成员的分数值
ZSCAN key cursor MATCH [pattern] [COUNT ] 迭代有序集合中的元素(包括元素成员和元素分值)

8-4 jedis

1.pom.xml注入依赖

<dependency>
      <groupId>redis.clients</groupId>
      <artifactId>jedis</artifactId>
      <version>4.2.3</version>
</dependency>

2.application.yml配置

# redis
redis:
  host: 127.0.0.1
  port: 6379
  db: 2 #数据库索引

image

image

posted @ 2022-12-09 16:12  小彤在努力  阅读(800)  评论(0)    收藏  举报