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

Redis以及Java使用Redis

一、Redis的安装

Redis是一个基于内存的 key-value 结构数据库。 基于内存存储,读写性能高 适合存储热点数据(热点商品、资讯、新闻) 企业应用广泛

官网:https://redis.io

中文网:https://www.redis.net.cn/

Redis安装包分为 Windows 版和 Linux 版:

Windows版下载地址:https://github.com/microsoftarchive/redis/releases

Linux版下载地址: https://download.redis.io/releases/

Redis的Windows版属于绿色软件,直接解压即可使用,解压后目录结构如下:

二、Redis的启动

启动方式

windows版本

服务启动命令:redis-server.exe redis.windows.conf

Linux版本:

启动方式跟windows也差不多

关闭方式

windows版本:

Redis服务默认端口号为 6379 ,通过快捷键Ctrl + C 即可停止Redis服务

Linux版本:

kill  -9  6379

三、客户端连接

客户端连接命令:redis-cli.exe

通过redis-cli.exe命令默认连接的是本地的redis服务,并且使用默认6379端口。

也可以通过指定如下参数连接: -h ip地址 -p 端口号 -a 密码(如果需要) 

设置Redis服务密码,修改redis.windows.conf

requirepass 123456

注意: 修改密码后需要重启Redis服务才能生效 Redis配置文件中 # 表示注释

Redis客户端图形工具

四、Redis的数据类型

Redis存储的是key-value结构的数据,其中key是字符串类型,value有5种常用的数据类型:

字符串 string

哈希 hash

列表 list

集合 set

有序集合 sorted set / zset

 

 字符串(string):普通字符串,Redis中最简单的数据类型

哈希(hash):也叫散列,类似于Java中的HashMap结构

列表(list):按照插入顺序排序,可以有重复元素,类似于Java中的LinkedList

集合(set):无序集合,没有重复元素,类似于Java中的HashSet

有序集合(sorted set / zset):集合中每个元素关联一个分数(score),根据分数升序排序,没有重复元素

字符串操作命令

Redis 字符串类型常用命令:

SET key value   设置指定key的值

GET key            获取指定key的值

SETEX key seconds value    设置指定key的值,并将 key 的过期时间设为 seconds 秒

SETNX key value        只有在 key 不存在时设置 key 的值

ttl key                         获取key的有效时间(设置了有效期的key返回有效期时间,过期了返回-2;没设置有效期的key,返回-1)

del key                          删除指定key

哈希操作命令

Redis hash 是一个string类型的 field 和 value 的映射表,hash特别适合用于存储对象,常用命令:

HSET key field value     将哈希表 key 中的字段 field 的值设为 value

HGET key field     获取存储在哈希表中指定字段的值

HDEL key field        删除存储在哈希表中的指定字段

HKEYS key         获取哈希表中所有字段

HVALS key         获取哈希表中所有值 

列表操作命令

Redis 列表是简单的字符串列表,按照插入顺序排序,常用命令:

LPUSH key value1 [value2]     将一个或多个值插入到列表头部(左边)

LRANGE key start stop         获取列表指定范围内的元素

RPOP key             移除并获取列表最后一个元素(右边)

LLEN key             获取列表长度 

set集合操作命令

Redis set 是string类型的无序集合。集合成员是唯一的,集合中不能出现重复的数据,

常用命令:

SADD key member1 [member2]     向集合添加一个或多个成员

SMEMBERS key         返回集合中的所有成员

SCARD key             获取集合的成员数

SINTER key1 [key2]         返回给定所有集合的交集

SUNION key1 [key2]         返回所有给定集合的并集

SREM key member1 [member2]     删除集合中一个或多个成员 

有序集合操作命令 

Redis有序集合是string类型元素的集合,且不允许有重复成员。每个元素都会关联一个double类型的分数。常用命令:

ZADD key score1 member1 [score2 member2]     向有序集合添加一个或多个成员

ZRANGE key start stop [WITHSCORES]         通过索引区间返回有序集合中指定区间内的成员 ZINCRBY key increment member             有序集合中对指定成员的分数加上增量 increment ZREM key member [member ...]             移除有序集合中的一个或多个成员 

通用命令

Redis的通用命令是不分数据类型的,都可以使用的命令:

KEYS pattern         查找所有符合给定模式( pattern)的 key

EXISTS key         检查给定 key 是否存在

TYPE key         返回 key 所储存的值的类型

DEL key         该命令用于在 key 存在是删除 key

五、Redis的Java客户端

Redis 的 Java 客户端很多,常用的几种:

Jedis 里面的方法命名基本跟Redis的命令命名方式一样

Lettuce

Spring Data Redis 命名与Redis命名的命名方式有出入

Spring Data Redis 是 Spring 的一部分,对 Redis 底层开发包进行了高度封装。 在 Spring 项目中,可以使用Spring Data Redis来简化操作。

http://www.lryc.cn/news/103820.html

相关文章:

  • Apipost教程?一篇文章玩转Apipost
  • 微信小程序开发学习之--地图绘制行政区域图
  • 在windows下安装ruby使用gem
  • 【Ajax】笔记-设置CORS响应头实现跨域
  • 实现Feed流的三种模式:拉模式、推模式和推拉结合模式
  • Vue中使用Typescript及Typescript基础
  • MySQL数据库 【索引事务】
  • 源码阅读:classnames
  • 【解惑笔记】树莓派+OpenCV+YOLOv5目标检测(Pytorch框架)
  • PostgreSQL中如何配置Huge page的数量
  • Mysql之binlog日志浅析
  • js 生成器函数
  • HCIP OSPF+BGP综合实验
  • 牛客网Verilog刷题——VL46
  • C/C++开源库推荐
  • git常用命令速查表
  • 让两个文件夹里的图片名字一模一样
  • 会议OA系统会议管理模块开发思路(layui搭建)
  • rsync 远程同步
  • PostgreSQL数据库中,查询时提示表不存在的解决办法
  • 视频传输网安全防护体系
  • C# Blazor 学习笔记(1):Blazor基础语法,组件化和生命周期
  • flutter 导出iOS问题2
  • syn报文什么时候会被丢弃?
  • 【C++】开源:Linux端V4L2视频设备库
  • 基于数据驱动的多尺度表示的信号去噪统计方法研究(Matlab代码实现)
  • 【Golang】Golang进阶系列教程--Go 语言 map 如何顺序读取?
  • 伊语IM即时通讯源码/im商城系统/纯源码IM通讯系统安卓+IOS前端纯原生源码
  • C++推理
  • Day10-作业(SpringBootWeb案例)