博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
redis的Java客户端jedis池的介绍及使用
阅读量:4118 次
发布时间:2019-05-25

本文共 2781 字,大约阅读时间需要 9 分钟。

一、jedis池的介绍
相信大家都用过线程池或者是jdbc的连接池,使用池可以减少系统在使用所需对象时创建对象的开销,从而提高系统性能和效率。jedis池也是如此,那么我们该如何使用jedis池呢?
二、jedis池的使用
1.所需jar包:commons-pool.jar、jedis-2.1.0.jar

2.编写Redis配置文件(redis.properties):

本例中代码如下:

#*****************jedis连接参数设置*********************##redis服务器ip #   redis.ip=192.168.8.167#redis服务器端口号#  redis.port=6379#************************jedis池参数设置*******************#  #jedis的最大分配对象#  jedis.pool.maxActive=3000#jedis最大保存idel状态对象数 #  jedis.pool.maxIdle=1000#jedis池没有对象返回时,最大等待时间 #  jedis.pool.maxWait=1500#jedis调用borrowObject方法时,是否进行有效检查#  jedis.pool.testOnBorrow=true#jedis调用returnObject方法时,是否进行有效检查 #  jedis.pool.testOnReturn=true
3.编写Java实现代码:

package com.zhongying.customer.utils;    import java.io.IOException;    import java.util.Properties;    import redis.clients.jedis.Jedis;    import redis.clients.jedis.JedisPool;    import redis.clients.jedis.JedisPoolConfig;    public class MyJedisPool {        private static JedisPool pool;            //静态代码初始化池配置          static {              try{          Properties props = new Properties();         props.load(MyJedisPool.class.getClassLoader().getResourceAsStream("redis.properties"));                 //创建jedis池配置实例                   JedisPoolConfig config = new JedisPoolConfig();                    //设置池配置项值                   config.setMaxActive(Integer.valueOf(props.getProperty("jedis.pool.maxActive")));                     config.setMaxIdle(Integer.valueOf(props.getProperty("jedis.pool.maxIdle")));                     config.setMaxWait(Long.valueOf(props.getProperty("jedis.pool.maxWait")));                     config.setTestOnBorrow(Boolean.valueOf(props.getProperty("jedis.pool.testOnBorrow")));                     config.setTestOnReturn(Boolean.valueOf(props.getProperty("jedis.pool.testOnReturn")));                     //根据配置实例化jedis池                   pool = new JedisPool(config, props.getProperty("redis.ip"), Integer.valueOf(props.getProperty("redis.port")));           }catch (IOException e) {    e.printStackTrace();    }        }                  /**获得jedis对象*/        public static Jedis getJedisObject(){         return pool.getResource();        }                /**归还jedis对象*/        public static void recycleJedisOjbect(Jedis jedis){         pool.returnResource(jedis);          }                  /**          * 测试jedis池方法          */          public static void main(String[] args) {            Jedis jedis = getJedisObject();//获得jedis实例                              //获取jedis实例后可以对redis服务进行一系列的操作              jedis.set("name", "zhuxun");              System.out.println(jedis.get("name"));              jedis.del("name");              System.out.println(jedis.exists("name"));              recycleJedisOjbect(jedis); //将 获取的jedis实例对象还回迟中        }      }
4.测试执行结果如下:

zhuxunfalse

转自网络,原作者已佚

转载地址:http://epjpi.baihongyu.com/

你可能感兴趣的文章
Kubernetes集群搭建之CNI-Flanneld部署篇
查看>>
k8s web终端连接工具
查看>>
手绘VS码绘(一):静态图绘制(码绘使用P5.js)
查看>>
手绘VS码绘(二):动态图绘制(码绘使用Processing)
查看>>
基于P5.js的“绘画系统”
查看>>
《达芬奇的人生密码》观后感
查看>>
论文翻译:《一个包容性设计的具体例子:聋人导向可访问性》
查看>>
基于“分形”编写的交互应用
查看>>
《融入动画技术的交互应用》主题博文推荐
查看>>
链睿和家乐福合作推出下一代零售业隐私保护技术
查看>>
Unifrax宣布新建SiFAB™生产线
查看>>
艾默生纪念谷轮™在空调和制冷领域的百年创新成就
查看>>
NEXO代币持有者获得20,428,359.89美元股息
查看>>
Piper Sandler为EverArc收购Perimeter Solutions提供咨询服务
查看>>
RMRK筹集600万美元,用于在Polkadot上建立先进的NFT系统标准
查看>>
JavaSE_day12 集合
查看>>
JavaSE_day14 集合中的Map集合_键值映射关系
查看>>
Day_15JavaSE 异常
查看>>
异常 Java学习Day_15
查看>>
JavaSE_day_03 方法
查看>>