服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - Java客户端利用Jedis操作redis缓存示例代码

Java客户端利用Jedis操作redis缓存示例代码

2020-11-29 13:49ngulc Java教程

Jedis是Redis官方推荐的用于访问Java客户端,下面这篇文章主要给大家介绍了关于Java客户端利用Jedis操作redis缓存的相关资料,文中给出了详细的示例代码,需要的朋友可以参考借鉴,下面来一起看看吧。

前言

Redis是一个开源的Key-Value数据缓存,和Memcached类似。Redis多种类型的value,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。

Jedis 是 Redis 官方首选的 Java 客户端开发包。下面就来给大家详细关于Java客户端利用Jedis操作redis缓存的相关内容,话不多说,直接来看示例代码吧。

示例代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
//连接redis ,redis的默认端口是6379
 
Jedis jedis = new Jedis ("localhost",6379);
 
 
 
//验证密码,如果没有设置密码这段代码省略
 
jedis.auth("password");
 
 
 
jedis.connect();//连接
 
jedis.disconnect();//断开连接
 
 
 
Set<String> keys = jedis.keys("*"); //列出所有的key
 
Set<String> keys = jedis.keys("key"); //查找特定的key
 
 
 
//移除给定的一个或多个key,如果key不存在,则忽略该命令.
 
jedis.del("key1");
 
jedis.del("key1","key2","key3","key4","key5");
 
 
 
//移除给定key的生存时间(设置这个key永不过期)
jedis.persist("key1");
 
//检查给定key是否存在
jedis.exists("key1");
 
//将key改名为newkey,当key和newkey相同或者key不存在时,返回一个错误
jedis.rename("key1", "key2");
 
//返回key所储存的值的类型。
//none(key不存在),string(字符串),list(列表),set(集合),zset(有序集),hash(哈希表)
jedis.type("key1");
 
//设置key生存时间,当key过期时,它会被自动删除。
jedis.expire("key1", 5);//5秒过期
 
 
 
//字符串值value关联到key。
jedis.set("key1", "value1");
 
//将值value关联到key,并将key的生存时间设为seconds(秒)。
jedis.setex("foo", 5, "haha");
 
//清空所有的key
jedis.flushAll();
 
//返回key的个数
jedis.dbSize();
 
//哈希表key中的域field的值设为value。
jedis.hset("key1", "field1", "field1-value");
jedis.hset("key1", "field2", "field2-value");
 
Map map = new HashMap();
map.put("field1", "field1-value");
map.put("field2", "field2-value");
jedis.hmset("key1", map);
 
 
//返回哈希表key中给定域field的值
jedis.hget("key1", "field1");
 
//返回哈希表key中给定域field的值(多个)
List list = jedis.hmget("key1","field1","field2");
for(int i=0;i<list.size();i++){
 System.out.println(list.get(i));
}
 
//返回哈希表key中所有域和值
Map<String,String> map = jedis.hgetAll("key1");
for(Map.Entry entry: map.entrySet()) {
 System.out.print(entry.getKey() + ":" + entry.getValue() + "\t");
}
 
//删除哈希表key中的一个或多个指定域
jedis.hdel("key1", "field1");
jedis.hdel("key1", "field1","field2");
 
//查看哈希表key中,给定域field是否存在。
jedis.hexists("key1", "field1");
 
//返回哈希表key中的所有域
jedis.hkeys("key1");
 
//返回哈希表key中的所有值
jedis.hvals("key1");
 
 
 
//将值value插入到列表key的表头。
jedis.lpush("key1", "value1-0");
jedis.lpush("key1", "value1-1");
jedis.lpush("key1", "value1-2");
 
//返回列表key中指定区间内的元素,区间以偏移量start和stop指定.
//下标(index)参数start和stop从0开始;
//负数下标代表从后开始(-1表示列表的最后一个元素,-2表示列表的倒数第二个元素,以此类推)
List list = jedis.lrange("key1", 0, -1);//stop下标也在取值范围内(闭区间)
for(int i=0;i<list.size();i++){
 System.out.println(list.get(i));
}
 
//返回列表key的长度。
jedis.llen("key1")
 
 
 
//将member元素加入到集合key当中。
jedis.sadd("key1", "value0");
jedis.sadd("key1", "value1");
 
//移除集合中的member元素。
jedis.srem("key1", "value1");
 
//返回集合key中的所有成员。
Set set = jedis.smembers("key1");
 
//判断元素是否是集合key的成员
jedis.sismember("key1", "value2"));
 
//返回集合key的元素的数量
jedis.scard("key1");
 
//返回一个集合的全部成员,该集合是所有给定集合的交集
jedis.sinter("key1","key2")
 
//返回一个集合的全部成员,该集合是所有给定集合的并集
jedis.sunion("key1","key2")
 
//返回一个集合的全部成员,该集合是所有给定集合的差集
jedis.sdiff("key1","key2");

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对服务器之家的支持。

原文链接:http://www.cnblogs.com/lcngu/p/6702479.html

延伸 · 阅读

精彩推荐