Java 使用Jedis操作Redis数据库
使用Java对Redis进行操作时,需要导入Jedis依赖
Maven 依赖
<dependency> |
Gradle依赖
implementation 'redis.clients:jedis:3.6.3' |
连接Redis数据库
连接数据库前需要先启动Redis服务,进入Redis安装目录下启动
redis-server redis.conf |
启动完成后会看到Redis的logo,将配置文件中daemonize no 改成 daemonize yes后会让Redis服务以守护进程的形式启动。
Redis默认端口号为6379,启动服务后使用lsof命令查看可得
root @ iZbp1dlsvh9krei21vla2sZ in src $ lsof -i :6379 |
服务启动后建立数据库连接
// 连接Redis数据库,Jedis第一个参数为Ip,第二个参数是port |
key
对Redis的键进行操作
public class Demo{ |
String
string 是Redis最基本的类型,可以理解为与Memcached
一模一样的类型,一个key对应一个value
string 类型是二进制安全的。 Redis的string可以包含任何数据,比如jpg图片或者序列化对象
string类型是Redis最基本的数据类型,一个Redis中字符串value最多可以是512M
单值单value
127.0.0.1:6379> set/get/del/append/strlen 设置/获取/删除/添加/长度 |
Java操作Redis字符串
public class Demo{ |
list
Redis列表是简单的字符串列表,按照插入顺序排序,可以添加一个元素到列表的头部或尾部
它的底层其实是一个链表
单值多value
127.0.0.1:6379> lpush/rpush/lrange 左Push/右push/ |
它是一个字符串链表,left right都可以插入添加
如果键不存在,创建新的链表
如果已存在,新增内容
如果value全移除,对应的key也全部消失
头尾效率极高,中间元素相反
public class Demo{ |
Set
set是string类型的无序集合,通过HashTable来实现的
单值多value
127.0.0.1:6379> sadd/smemebers/sismember |
public class Demo{ |
Hash
类似于java中的Map<String, Object>
hash 是一个键值对集合
hash是一个string类型的field和value的映射表,特别适合存储对象
KV模式不变,但是V是一个键值对
127.0.0.1:6379> hset/hget/hmset/hmget/hgetall/hdel |
public class Demo{ |
Zset
Zset和set一样是string类型元素的集合,不允许重复元素
不同的是每个元素都会关联一个double类型的分数
通过分数来为集合中的成员进行从小到大的排序
Zset成员是唯一的,分数可以重复
在set基础上,加一个score值
set 是k1 v1 k2 v2
Zset是 k1 score1 v1 k2 score v2
127.0.0.1:6379> zadd/zrange |
public class Demo{ |
- 本文作者: Naskete
- 本文链接: https://Naskete.github.io/2021/07/26/essay/Java使用Jedis操作Redis数据库/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!