Redis命令简易教程

Redis详细命令可参阅 http://redisdoc.com/

Java 中使用Jedis jd=new Jedis("127.0.0.1");

jd.close();//

所有的命令,jd都有方法对应。

1.String类型

set mykey "good to know you"   返回OK

get mykey 返回字符串“good to know you”,如果key不存在,返回null

对应Jedis用法:

System.out.println(jd.set("mykey", "good to know you")); //打印OK

为key设置超时时间

set mykey "good to see ya" ex 120 设置mykey的存活时间是120秒

使用ttl mykey返回剩余存活时间。(注意:key不存在(过期),返回-2,有可以但是没有设置存活时间返回-1,其他返回存活时间)

对应Jedis用法:

jd.setex("hi", 120, "winter is coming");//参数分别是 key,时间,value

NX和XX选项

在set 命令末尾添加NX 或者XX,分别表示

NX当key不存在的执行set

XX当key存在的时候执行set

成功返回OK,失败返回null

set hi "spring is coming" XX

对应jedis代码jd.set("hi", "good lord", "XX");

2.Hash

 hmset  mykey name "Bob Cook"  age 23 job Engineer

返回OK

hgetall mykey 返回

1) "name"
2) "Bob Cook"
3) "age"
4) "23"
5) "job"
6) "Engineer"

对应Java代码

Map<String,String> h=new HashMap<>();
        h.put("name", "Bob Cook");
        h.put("age", "23");
        h.put("job", "engineer");
        jd.hmset("mykey", h);
        System.out.println(jd.hgetAll("mykey"));

//打印字符串
//{name=Bob Cook, job=engineer, age=23}

针对hash中某一字段设置和查询

hset mykey name "Tim Cook" 如果name原理没有,返回1,如果name原来有,被覆盖,返回0

hget mykey name返回"Tim Cook"

 3列表

添加元素

lpush mykey one two three four 返回当前列表长度

lpush mykey good

lrange mykey 0 10 返回0~10范围内列表mykey的元素

1) "good"
2) "four"
3) "three"
4) "two"
5) "one"

lindex mykey 3 返回列表mykey 从0开始第3元素 “two”

Java代码如下:

//代码的操作接着命令行中对mykey的操作
System.out.println(jd.lpush("mykey", "bad","evil"));
        System.out.println(jd.lrange("mykey", 0, 10));
返回7
//[evil, bad, good, four, three, two, one]

 4.集合

要点,元素不可重合

增加:sadd mykey good notgood bad bad   返回当前操作增加的元素 3,因为重复的不算

sadd mykey yes 返回 1

smembers 返回所有元素

1) "bad"
2) "notgood"
3) "good"
4) "yes"

删除srem mykey good 返回成功移除的元素个数

对应Java 代码

System.out.println(jd.sadd("mykey", "good","notgood","bad","bad"));
        System.out.println(jd.smembers("mykey"));
        System.out.println(jd.srem("mykey", "good"));

//执行结果
//3
//[bad, notgood, good]
//1

5.有序集合

主要是关联的分数

zadd mykey 45 good

zadd mykey 2 bad

zrangebyscore 0 100

返回 

1) "bad"
2) "good"

原文地址:https://www.cnblogs.com/legion/p/9179031.html