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. eclipse项目(java project)如何导入jar包的解决方案列表?

    右键项目-properties-java build path(左侧菜单)-选择libraries 有两种方式,导入jar包实际上就是建立一种链接,并不是copy式的导入 一.导入外部包,add ex ...

  2. LintCode之回文数

    题目描述: 我的代码: public class Solution { /* * @param num: a positive number * @return: true if it's a pal ...

  3. 安装mysql5.6.24解压版

    第一步:配置环境变量    第二步:修改 my-default.ini 文件  找到mysql 文件夹中的my-default,ini 修改成如下图 如果不修改直接运行cmd  net start m ...

  4. 数据结构C语言实现

    顺序表实现 typedef int Position; typedef struct LNode *List; struct LNode { ElementType Data[MAXSIZE]; Po ...

  5. [fw]IDT表的初始化

    IDT表的初始化  linux内核的中断描述符表IDT是一个全局的数据,在i386平台上被定义为: struct desc_struct idt_table[256] __attribute__((_ ...

  6. 七、hibernate的事务使用

    hibernate中事务隔离级别 1:读未提交 2:读已提交 4:可重复读 8:可串行化 hibernate事务使用 在核心配置文件中配置事务隔离级别 <property name=" ...

  7. CocoaPods CDN: trunk Repo update failed

    问题 今天升级 CocoaPods 到 1.8.4 版本但是随即问题就来了, 执行 pod install 下载库时,出现错误 解决 在 Podfile 加上 source ‘https://gith ...

  8. 关于 ioctl 函数

    ioctl函数是用于控制的设备的接口 1.底层: long (*unlocked_ioctl) (struct file *filp, unsigned int cmd, unsigned long ...

  9. Oracle之分页问题

    前面的Top-N问题使用了reownum,但是又遇到个分页问题,将表emp的4行为1页输出,前4行很好做: select rownum,empno,ename,sal from emp ; 但是4-- ...

  10. go语言从例子开始之Example4.常量

    Go 支持字符.字符串.布尔和数值 常量 . package main import "fmt" import "math" const 用于声明一个常量. c ...