java连接redis

1、当redis服务器打开之后,java如何连接运行在内存中的redis呢?java使用jedis连接redis,需要两个jar包,一个是jedis.2.9.0.jar,一个是jedis的依赖包common.pool.jar,笔者建议使用maven下载,可以在maven仓库找到其maven依赖连同其jar包一起下载。(jedis.2.9.0.jar、common.pool.jar,)

2、使用连接池连接redis,redis大多应用于高并发,因此在创建连接池的应该避免多线程访问不安全。请参考下文

 连接池的设置:

public class RedisPoolUtils {
         private static JedisPool jedisPool = null;
         public static JedisPool getJedisPool(){
             Lock lock = new ReentrantLock();
             lock.lock();
             if(jedisPool==null) {
                 JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
                 //连接池中最大连接数
                 jedisPoolConfig.setMaxTotal(100);
                 //当连接池资源耗尽时,客户端最大等待时间单位是毫秒
                 jedisPoolConfig.setMaxWaitMillis(5000);
                 //连接池中最大空闲的连接数
                 jedisPoolConfig.setMaxIdle(20);
                 //连接池中最少空闲的连接数
                 jedisPoolConfig.setMinIdle(5);
                 //依次为连接池配置,IP,端口,超时时间
                 JedisPool jedisPool = new JedisPool(jedisPoolConfig,"localhost",6379,5000);
             }
             lock.unlock();
             return jedisPool;
         }

        //通过该工具方法回收已经用完了的redis连接
        public static void recycleConnection(JedisPool jedisPool, Jedis jedis) {
            //需要判断传入的jedis是否为空
            if(null != jedis) {
                //如果不等于空,则可以回收该连接
                jedisPool.returnResource(jedis);

        }
    }
}

 

连接池的测试:

 

public static void main(String[] args){
    //获取jedisPool
   JedisPool jedisPool = RedisPoolUtils.getJedisPool();
   //获取jedis实例
   Jedis jedis = jedisPool.getResource();
   System.out.println( jedis.ping());
   jedis.set("name","jing");
   String name  = jedis.get("name");
   System.out.println(name);
   RedisPoolUtils.recycleConnection(jedisPool,jedis);
}

结果:PONG
           jing

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值