前提:需要引入Jedis的jar包。
1 /**
2 * 我的redis在Linux虚拟机Centos7中,192.168.222.129是我虚拟机的ip地址。
3 */
4 private static Jedis jedis = new Jedis("192.168.222.129");
1 //测试String类型
2 @Test
3 public void testString(){
4 //设定该Key持有指定的字符串Value,如果该Key已经存在,则覆盖其原有值。返回值总是返回"OK"
5 String returnset = jedis.set("mykey", "hello");
6 //根据键获取值
7 String mykeyValue = jedis.get("mykey");
8
9 //追加 如果key存在,则在原来的key的value后面追加;否则效果相当于set
10 Long result = jedis.append("mykey7", "我是后面追加的7");
11
12 //判断该键是否存在,存在返回true,否则返回false。
13 Boolean result5 = jedis.exists("mykey");
14
15 //取指定Key的字符长度,等效于C库中strlen函数。
16 Long result6 = jedis.strlen("mykey");
17
18 //=================================
19 //设置Key的值为20
20 jedis.set("mykey2", "20");
21 //该Key的值递增1
22 Long result1 = jedis.incr("mykey2");
23
24 //该key的值递减1
25 Long result2 = jedis.decr("mykey2");
26
27 //删除已有键,删除成功返回1,该键不存在的话就返回0.
28 Long result3 = jedis.del("mykey");
29
30 //从第六个开始替换2个字符(dd只有2个字符),从0开始计数,如果长度不够,就用空格空字符替代
31 jedis.setrange("mykey", 6, "dd");//"hello dd"
32
33 //截取该键的Value,从第一个字符开始,到第二个字符结束。它是从0开始计数的
34 String returngetRange = jedis.getrange("mykey", 1, 2);//el
35 //20已经超过Value的总长度,因此将截取第一个字节后面的所有字节。
36 String returngetRange2 = jedis.getrange("mykey", 1, 20);//ello
37
38 //批量设置了key1和key2两个键。返回值表示是否执行成功,执行成功返回1.
39 Long returnmsetnxValue = jedis.msetnx("key1","key1Value","key2","key2Value");
40
41 //批量获取了key1和key2两个键的值。
42 List<String> mget = jedis.mget("key1","key2");
43 for(String value:mget){
44 System.out.print(value+" ");
45 }
46 //打印结果为:key1Value key2Value
47
48 //批量设置了key3和key5两个键,但是key3已经存在,所以该命令执行失败并返回0。
49 Long returnmsetnxValue1 = jedis.msetnx("key2","key2Value","key3","key3Value");
50
51 //批量获取key2和key3,由于key3没有设置成功,所以返回nil。
52 List<String> mget1 = jedis.mget("key2","key3");
53 for(String value:mget1){
54 System.out.print(value+" ");
55 }
56 //打印结果依次为 key2Value null,因为key3没有设置成功,所以取出来的值为null
57
58
59 //该命令原子性的完成参数中所有key/value的设置操作,其具体行为可以看成是多次迭代执行SET命令。 该命令不会失败,始终返回OK。
60 String mset = jedis.mset("key2","key2newValue","key3","key3Value");
61
62 //设置从0开始计算的第七位BIT值为1,返回原有BIT值0.这里用1代表true,用0代表false。
63 //Boolean setbit = jedis.setbit("mybitkey", 7, true);
64 String result4 = mykeyValue;
65
66 //返回了指定Offset的BIT值。以true代表1,false代表0
67 Boolean getbitsixresult = jedis.getbit("mybitkey", 7);
68
69 jedis.close();
70 }
不能只满足于写完代码运行结果正确就完事,时常考虑如何让代码更加简练更加容易维护、容易扩展和复用,只有这样才可以真正得到提高 --《来自大话设计模式》