Redis入门很简单之四【初识Jedis】

博客分类:

使用Jedis提供的Java API对Redis进行操作,是Redis官方推崇的方式;并且,使用Jedis提供的对Redis的支持也最为灵活、全面;不足之处,就是编码复杂度较高。

[一]. 入门使用:
 下载Jedis的依赖包jedis-2.1.0.jar,然后将其添加到classpath下面。然后,即可进行编程:
  1. 定义连接:Redis暂时不要设置登录密码

  1. Jedis jedis = new Jedis("192.168.142.12");

2. 进行键值存储:

  1. jedis.set("country", "China");

3. 获取value值:

  1. String country = jedis.get("country");

4. 删除key:

  1. jedis.del("country");

[二]. 使用连接池:
  1. 添加依赖包commons-pool.jar,注意不要选择高版本,以免不必要的错误。
  2. 配置属性文件:redis.properties

  1. redis.host=192.168.142.12       #Redis服务器地址
  2. redis.port=6379                 #服务端口
  3. redis.timeout=3000              #超时时间:单位ms
  4. redis.password=nick123          #授权密码
  5. redis.pool.maxActive=200        #最大连接数:能够同时建立的“最大链接个数”
  6. redis.pool.maxIdle=20           #最大空闲数:空闲链接数大于maxIdle时,将进行回收
  7. redis.pool.minIdle=5            #最小空闲数:低于minIdle时,将创建新的链接
  8. redis.pool.maxWait=3000         #最大等待时间:单位ms
  9. redis.pool.testOnBorrow=true    #使用连接时,检测连接是否成功
  10. redis.pool.testOnReturn=true    #返回连接时,检测连接是否成功

3. 加载属性文件:redis.properties

  1. ResourceBundle bundle = ResourceBundle.getBundle("redis");

4. 创建配置对象:

  1. JedisPoolConfig config = new JedisPoolConfig();
  2. String host = bundle.getString("redis.host");
  3. ...
  4. config.setMaxActive(Integer.valueOf(bundle.getString("redis.pool.maxActive")));
  5. ...
  6. config.setTestOnBorrow(Boolean.valueOf(bundle.getString("redis.pool.testOnBorrow")));
  7. ...

5. 创建Jedis连接池:

  1. JedisPool pool = new JedisPool(config, host, port, timeout, password);

[三]. 使用方式:   
 1. 从连接池获取Jedis对象:

  1. Jedis jedis = pool.getResource();

2. 基本操作:

  1. jedis.set("province", "shannxi");
  2. String province = jedis.get("province");
  3. jedis.del("province");

3. 将Jedis对象归还给连接池:

  1. pool.returnResource(jedis);
 

Redis入门很简单之四【初识Jedis】的更多相关文章

  1. Redis入门很简单之五【Jedis和Spring的整合】

    Redis入门很简单之五[Jedis和Spring的整合] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存jedisspring  在上一篇文章中,简单介绍了Jedis的 ...

  2. Redis入门很简单之六【Jedis常见操作】

    Redis入门很简单之六[Jedis常见操作] http://www.tuicool.com/articles/vaqABb http://www.cnblogs.com/stephen-liu74/ ...

  3. Redis入门很简单之七【使用Jedis实现客户端Sharding】

    Redis入门很简单之七[使用Jedis实现客户端Sharding] 博客分类: NoSQL/Redis/MongoDB redisjedisspringsharding分片 <一>. 背 ...

  4. Redis入门很简单之一【简介与环境搭建】

    Redis入门很简单之一[简介与环境搭建] 博客分类: NoSQL/Redis/MongoDB redisnosqlmemcached缓存中间件  [Redis简介] <一>. NoSQL ...

  5. Redis入门很简单之三【常见参数配置】

    Redis入门很简单之三[常见参数配置] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存中间件memcached  Redis的一下常见设置都是通过对redis.conf ...

  6. Redis入门很简单之二【常见操作命令】

    Redis入门很简单之二[常见操作命令] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存  Redis提供了丰富的命令,允许我们连接客户端对其进行直接操作.这里简单介绍一 ...

  7. 踢爆IT劣书出版黑幕——由清华大学出版社之《C语言入门很简单》想到的(1)

    1.前言与作者 首先声明,我是由于非常偶然的机会获得<C语言入门很简单>这本书的,绝对不是买的.买这种书实在丢不起那人. 去年这书刚出版时,在CU论坛举行试读推广,我当时随口说了几句(没说 ...

  8. [电子书] 《Android编程入门很简单》

    <Android编程入门很简单>是一本与众不同的Android学习读物,是一本化繁为简,把抽象问题具体化,把复杂问题简单化的书.本书避免出现云山雾罩.晦涩难懂的讲解,代之以轻松活泼.由浅入 ...

  9. 《Mysql 入门很简单》(读后感①)

    下载完整版<Mysql 入门很简单>,点击这里~: http://files.cnblogs.com/files/zhengyeye/MySQL%E5%85%A5%E9%97%A8%E5% ...

随机推荐

  1. HBASE(分布式海量NOSQL数据库)

    HBase建表高级属性,hbase应用案例看行键设计,HBase和mapreduce结合,从Hbase中读取数据.分析,写入hdfs,从hdfs中读取数据写入Hbase,协处理器和二级索引 1. Hb ...

  2. [CSP-S模拟测试]:施工(DP+单调栈+前缀和)

    题目描述 小$Y$家门前有一条街道,街道上顺序排列着$n$幢建筑,其中左起第$i$幢建筑的高度为$h_i$.小$Y$定义街道的不美观度为所有相邻建筑高度差的绝对值之和乘上常数$c$,为了改善街道环境, ...

  3. How to: Use a Custom User Name and Password Validator(WCF)

    在wcf中使用自定义的用户名和密码验证方式 https://msdn.microsoft.com/en-us/library/aa702565.aspx http://www.codeproject. ...

  4. 110、TensorFlow张量值的计算

    import tensorflow as tf #placeholders在没有提供具体值的时候不能使用eval方法来计算它的值 # 另外的建模方法可能会使得模型变得复杂 # TensorFlow 不 ...

  5. maven 国内加速,修改镜像源

    为什么慢 由于默认情况下执行 mvn 各种命令是去国外的 mvn 官方镜像源获取需要安装的具体软件信息,所以在不使用代理.不翻墙的情况下,从国内访问国外服务器的速度相对比较慢 如何修改镜像源 阿里旗下 ...

  6. 嵌入式C语言3.5 关键字---运算符

    1. 算数运算符 + -                    A +/- B 要求A,B数据类型一致 * 乘法   / 除法    %取模 乘法CPU可能需要多个周期,甚至需要利用软件的模拟方法来实 ...

  7. 【excel】 超链接相关

    如何导出超链接: 用visual basic处理 在excel中:Alt+F11 --> F7 --> 粘贴下面代码 -->F5(运行), 则会在原列接右侧出现超链  Sub Ext ...

  8. C++中的智能指针类模板

    1,智能指针本质上是一个对象,这个对象可以像原生的指针一样使用,因为智能指 针相关的类通过重载的技术将指针相关的操作符都进行了重载,所以智能指针对象可以像原生指针一样操作,今天学习智能指针类模板,通过 ...

  9. HDU 6469 /// 二分

    题目大意: 分裂怪有1到n种等级, 第1级的分裂怪称为原子怪,它不会分裂,被击杀时会产生a[1]点经验: 而第k级的分裂怪死亡时则会分裂成a[k]个第k - 1级的分裂怪. 一个体力可以杀死一个怪物. ...

  10. python 大小写转换函数

    capitalize() 首字母大写,其余全部小写 upper() 全转换成大写 lower() 全转换成小写 title()  标题首字大写,如"i love python".t ...