前提:需要引入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();
}

使用Jedis操作Redis-使用Java语言在客户端操作---String类型的更多相关文章

  1. 使用Jedis操作Redis-使用Java语言在客户端操作---对key的操作

    //添加String类型的模拟数据. jedis.set("mykey", "2"); jedis.set("mykey2", " ...

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

    原文地址:http://www.cnblogs.com/lixianyuan-org/p/9509696.html 1 //测试set数据类型 2 /** 3 * 在Redis中,我们可以将Set类型 ...

  3. 使用Jedis操作Redis-使用Java语言在客户端操作---对Sorted-Sets的操作

    //对Sorted-Sets操作 /** * Sorted-Sets和Sets类型极为相似,它们都是字符串的集合,都不允许重复的成员出现在一个Set中. * 它们之间的主要差别是Sorted-Sets ...

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

        我们可以将Redis中的Hashes类型看成具有String Key和String Value的map容器.            所以该类型非常适合于存储值对象的信息.如Username.P ...

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

    在Redis中,List类型是按照插入顺序排序的字符串链表.和数据结构中的普通链表一样,我们可以在其头部(left)和尾部(right)添加新的元素.在插入时,如果该键并不存在,Redis将为该键创建 ...

  6. java web 获取客户端操作系统信息

    package com.java.basic.pattern; import java.util.regex.Matcher; import java.util.regex.Pattern; /** ...

  7. Redis系列(四):数据结构String类型中基本操作命令和源码解析

    1.介绍 string类型本质上是char[]数组的封装  中文网:http://www.redis.cn/commands.html#string  2.常用命令 set 命令 set命令的时间复杂 ...

  8. 使用Java(Jedis)链接redis报java.net.ConnectException: Connection refused: connect的错误

    redis环境:centos6 java代码运行环境:windows 第一种情况:未开启redis服务. redis-server /myredis/redis.conf (写你的redis配置文件的 ...

  9. 基于Java语言的IO操作(文件复制)

    public static void main(String[] args) { //获取复制开始前系统时间毫秒值 long start=System.currentTimeMillis(); //文 ...

随机推荐

  1. soj102 普通平衡树

    题意: 标程: #include<cstdio> using namespace std; int read() { ,f=;char ch=getchar(); ;ch=getchar( ...

  2. Spring boot配置Dubbo三种方式

    方式一 使用注解的方式 导入dubbo-starter 在application.properties配置属性 使用@Service暴露服务 使用@Reference引用服务 使用@EnableDub ...

  3. Extjs4 desktop 图标自动换行,横纵排列 图标大小修改

    一.图标换行 /*! * Ext JS Library 4.0 * Copyright(c) 2006-2011 Sencha Inc. * licensing@sencha.com * http:/ ...

  4. Java-MyBatis-MyBatis3-XML映射文件:自动映射

    ylbtech-Java-MyBatis-MyBatis3-XML映射文件:自动映射 1.返回顶部 1. 自动映射 正如你在前面一节看到的,在简单的场景下,MyBatis 可以为你自动映射查询结果.但 ...

  5. Java笔记 - 输入输出流

    java.io包中定义了各式各样的"流(stream)" 类型(类或抽象类),通过标准的方法实现对于数据的输入/输出操作. 一.流类型分类 以从不同的角度对其进行分类:按数据流的方 ...

  6. rpm包安装过程中依赖问题“libc.so.6 is needed by XXX”解决方法-转

    原文:http://raksmart.idcspy.com/781 在CentOS上的Canon LBP2900安装打印机驱动,中间遇到了一些问题,主要是安装rpm包出现的依赖问题,现在解决了,现在简 ...

  7. <数据库>MySQL补充( 查询)

    show create table 表名 \G;(查看创建的属性) alter table 表名 auto_increment=xx;(修改自增起始值) set session auto_increm ...

  8. Zookeeper的安装与使用:

  9. vue:使用不同参数跳转同一组件,实现动态加载图片和数据,以及利用localStorage和vuex持久化数据

    需求:通过不同的参数复用同一组件,实现动态加载数据和图片,同时,在页面刷新时,图片依旧可以加载成功. 过程出现的bug和问题: 1.使用params传参后,再次刷新页面,参数丢失导致数据无法再次加载 ...

  10. OpenGL学习笔记2017/8/29

    OpenGL学习日志: 感谢doing5552 的OpenGL入门学习:http://www.cppblog.com/doing5552/archive/2009/01/08/71532.html 相 ...