使用Jedis操作Redis-使用Java语言在客户端操作---String类型

时间:2021-07-18 03:56:13

前提:需要引入Jedis的jar包。

      /**
* 我的redis在Linux虚拟机Centos7中,192.168.222.129是我虚拟机的ip地址。
*/
private static Jedis jedis = new Jedis("192.168.222.129");
 //测试String类型
@Test
public void testString(){
//设定该Key持有指定的字符串Value,如果该Key已经存在,则覆盖其原有值。返回值总是返回"OK"
String returnset = jedis.set("mykey", "hello");
//根据键获取值
String mykeyValue = jedis.get("mykey"); //追加 如果key存在,则在原来的key的value后面追加;否则效果相当于set
Long result = jedis.append("mykey7", "我是后面追加的7"); //判断该键是否存在,存在返回true,否则返回false。
Boolean result5 = jedis.exists("mykey"); //取指定Key的字符长度,等效于C库中strlen函数。
Long result6 = jedis.strlen("mykey"); //=================================
//设置Key的值为20
jedis.set("mykey2", "20");
//该Key的值递增1
Long result1 = jedis.incr("mykey2"); //该key的值递减1
Long result2 = jedis.decr("mykey2"); //删除已有键,删除成功返回1,该键不存在的话就返回0.
Long result3 = jedis.del("mykey"); //从第六个开始替换2个字符(dd只有2个字符),从0开始计数,如果长度不够,就用空格空字符替代
jedis.setrange("mykey", 6, "dd");//"hello dd" //截取该键的Value,从第一个字符开始,到第二个字符结束。它是从0开始计数的
String returngetRange = jedis.getrange("mykey", 1, 2);//el
//20已经超过Value的总长度,因此将截取第一个字节后面的所有字节。
String returngetRange2 = jedis.getrange("mykey", 1, 20);//ello //批量设置了key1和key2两个键。返回值表示是否执行成功,执行成功返回1.
Long returnmsetnxValue = jedis.msetnx("key1","key1Value","key2","key2Value"); //批量获取了key1和key2两个键的值。
List<String> mget = jedis.mget("key1","key2");
for(String value:mget){
System.out.print(value+" ");
}
//打印结果为:key1Value key2Value //批量设置了key3和key5两个键,但是key3已经存在,所以该命令执行失败并返回0。
Long returnmsetnxValue1 = jedis.msetnx("key2","key2Value","key3","key3Value"); //批量获取key2和key3,由于key3没有设置成功,所以返回nil。
List<String> mget1 = jedis.mget("key2","key3");
for(String value:mget1){
System.out.print(value+" ");
}
//打印结果依次为 key2Value null,因为key3没有设置成功,所以取出来的值为null //该命令原子性的完成参数中所有key/value的设置操作,其具体行为可以看成是多次迭代执行SET命令。 该命令不会失败,始终返回OK。
String mset = jedis.mset("key2","key2newValue","key3","key3Value"); //设置从0开始计算的第七位BIT值为1,返回原有BIT值0.这里用1代表true,用0代表false。
//Boolean setbit = jedis.setbit("mybitkey", 7, true);
String result4 = mykeyValue; //返回了指定Offset的BIT值。以true代表1,false代表0
Boolean getbitsixresult = jedis.getbit("mybitkey", 7); jedis.close();
}