Java 使用Jedis操作redis

目录


redis相关命令总结

导入Jar包

创建Redis连接

Jedis API整理

普通类型(String)

散列类型(Hash)

列表类型(List)

无序集合类型(Set)

有序集合类型(Zset)

 

 


 

 

 

 

 

 

 

redis相关命令总结

  redis常用数据结构的操作命令可以参考:Redis命令总结

 

导入Jar包

  Java官方推荐使用Jedis来管理redis,所以这里本文将会使用Jedis。

  如果创建Maven项目,那么在pom.xml中添加下面的依赖:

<dependency>
	<groupId>redis.clients</groupId>
	<artifactId>jedis</artifactId>
	<version>2.10.2</version>
	<type>jar</type>
	<scope>compile</scope>
</dependency>

  如果是手动导入Jar包,则需要下面三个Jar包(已经注明了groupId、artifactId、version):

redis/clients/jedis/2.10.2/jedis-2.10.2.jar
org/slf4j/slf4j-api/1.7.22/slf4j-api-1.7.22.jar
org/apache/commons/commons-pool2/2.4.3/commons-pool2-2.4.3.jar

  

 

创建Redis连接

  

  在Jedis中,创建Redis,只需要创建Jedis对象即可,下面是创建Jedis常用的构造方法:

Jedis() 
Jedis(String host) 
Jedis(String host, int port) 

  上面的三个构造方法是最简单的创建Jedis对象的方式,如果使用redis连接池,可以参考文章:

 

Jedis API整理

  下面将会列举出常用的Jedis API,这些API和redis原始的命令几乎没有区别,只需要大概注意一下返回值即可。

  另外还需要注意的是,下面的所有API都是通过Jedis对象进行调用的,也就是说,下面的所有API都是Jedis的实例方法。 

 

普通类型(String)

Redis命令Jedis对应的API
set key valueString set(String key, String value)
get keyString get(String key) 
exists keyLong exists(String... keys)
del keyLong del(String key) 
type keyString type(String key)
incr keyLong incr(String key)
incrby key incrementLong incrBy(String key, long increment)
incrbyfloat key incrmentDouble incrByFloat(String key, double increment)
decr keyLong decr(String key)
decrby key decrment Long decrBy(String key, long decrement)
append key valueLong append(String key, String value)
strlen keyLong strlen(String key)
mset key1 value1 key2  value2String mset(String k1, String v1, String k2, String v2...)
mget key1 key2...List<String> mget(String k1, String k2)

 

散列类型(hash)

Redis命令Jedis对应的API
hset key field value

Long hset(String key, String field, String value)

Long hset(String key, Map<String,String> map)

hsetnx key field value

Long hsetnx(String key, String field, String value)

String hmset(String key, Map<String,String> hash)

hmset key field1 value1 field2 value2String hmset(String key, Map<String,String> hash)
hget key fieldString hget(String key, String field)
hmget key field1 field2List<String> hmget(String key, String k1, String k2...)
hgetall keyMap<String,String> hgetAll(String key) 
hexists key fieldBoolean hexists(String key, String field)
hincrby key field incrementLong hincrBy(String key, String field, long value)
hincrbyfloat key field incrementDouble hincrByFloat(String key, String field, double value)
hdel key fieldLong hdel(String key, String... fields) 
hkeys keySet<String> hkeys(String key)
hvals keyList<String> hvals(String key)
hlen keyLong hlen(String key)

 

列表类型(list)

Redis命令Jedis对应的API
lpush key value1 value2Long lpush(String key, String... strings)
rpush key value1 value2Long rpush(String key, String... strings) 
lpop keyString lpop(String key)
rpop keyString rpop(String key)
llenLong llen(String key)
lrange key start endList<String> lrange(String key, long start, long stop)
lrange key 0 -1 
lindex key indexString lindex(String key, long index)
lset key index valueString lset(String key, long index, String value) 
ltrim key start endString ltrim(String key, long start, long stop)
linsert key before/after oneValue valueLong linsert(String key, ListPosition where, String pivot, String value)
rpoplpush key1 key2String rpoplpush(String srckey, String dstkey) 
lrem key count valueLong lrem(String key, long count, String value)

 

无序集合类型(set)

Redis命令 Jedis对应的API
 sadd key member1 member2Long sadd(String key, String... members)
 srem key member1 member2Long srem(String key, String... members)
 smembers keySet<String> smembers(String key)
 sismember key memberBoolean sismember(String key, String member)
 sdiff key1 key2 ...Set<String> sdiff(String... keys)
 sinter key1 key2...Set<String> sinter(String... keys)
 sunion key1 key2...Set<String> sunion(String... keys)
 scard keyLong scard(String key)
srandmember key [count]

String srandmember(String key)

List<String> srandmember(String key, int count)

spop key [count]

String spop(String key)

Set<String> spop(String key, long count)

 

有序集合类型(zset)

Redis命令Jedis对应的API
zadd key score member

Long zadd(String key, double score, String member)

Long zadd(String key, Map<String,Double> scoreMembers)

zscore key memberDouble zscore(String key, String member)
zrange key start endSet<String> zrange(String key, long start, long stop)
zrevrange key start endSet<String> zrevrange(String key, long start, long stop)

zrangebyscore key min max[withscore][limit offset count]

Set<String> zrangeByScore(String key, double min, double max)

Set<String> zrangeByScore(String key, String min, String max)

Set<String> zrangeByScore(String key, String min, String max, int offset, int count)

zincrby key increment memberDouble zincrby(String key, double increment, String member)
zcard keyLong zcard(String key)
zcount key min max

Long zcount(String key, String min, String max)

Long zcount(String key, double min, double max)

zrem key member1 member2...Long zrem(String key, String... members)
zremrangebyrank key start endLong zremrangeByRank(String key, long start, long stop)
zremrangebyscore key min max

Long zremrangeByScore(String key, double min, double max)

Long zremrangeByScore(String key, String min, String max)

zrank key member Long zrank(String key, String member)

 

  

 

转载于:https://www.cnblogs.com/-beyond/p/10990658.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值