SpringBoot学习之Jedis

(一)、新建JedisPoolTest类,测试连接池

package org.hx.jedis;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;

public class JedisPoolTest {
    public static void main(String[] args) {
//        Jedis jedis=null;
        //1、构造一个Jedis连接池
        JedisPool pool = new JedisPool("192.168.133.8",6379);
        //2、从连接池中获取一个Jedis连接
        jedis = pool.getResource();
        jedis.auth("hx");
        try {
            //Jedis操作
            String ping =jedis.ping();
            System.out.println(ping);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            //关闭操作
            jedis.close();
        }
        JedisPool pool = new JedisPool("192.168.133.8",6379);
        try(Jedis jedis = pool.getResource()) {
            jedis.auth("hx");
            String ping = jedis.ping();
            System.out.println(ping);
        }

    }
}

(二)、实现强约束

新建CallwithJedis接口

package org.hx.jedis;

import redis.clients.jedis.Jedis;

public interface CallwithJedis {
    void call(Jedis jedis);
}

新建Redis类

package org.hx.jedis;

import org.apache.commons.pool2.impl.GenericKeyedObjectPoolConfig;
import org.apache.commons.pool2.impl.GenericObjectPoolConfig;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;

public class Redis {
    private JedisPool jedisPool;
    public Redis(){
        GenericObjectPoolConfig config = new GenericObjectPoolConfig();
        //连接池最大空闲数
        config.setMaxIdle(300);
        //最大连接数
        config.setMaxTotal(1000);
        //连接最大等待时间,如果是-1表示没有限制
        config.setMaxWaitMillis(10000);
        //在空闲时检查有效性
        config.setTestOnBorrow(true);
        /**
          * 1. Redis 地址
          * 2. Redis 端口
          * 3. 连接超时时间
          * 4. 密码
         * */
        jedisPool = new JedisPool(config,"192.168.133.8",6379,10000,"hx");

    }
    public void execute(CallwithJedis callwithJedis){
        try(Jedis jedis = jedisPool.getResource()){
            callwithJedis.call(jedis);
        }
    }
}

新建MyJedis类

package org.hx.jedis;

import redis.clients.jedis.Jedis;

public class MyJedis {
    public static void main(String[] args) {
//        //1.构造一个 Jedis 对象,因为这里使用的默认端口 6379,所以不用配置端口
//        Jedis jedis = new Jedis("192.168.133.8");
//        //2.密码认证
//        jedis.auth("hx");
//        //3.测试是否连接成功
//        String ping = jedis.ping();
//        //4.返回 PONG 表示连接成功
//        System.out.println(ping);
        Redis redis = new Redis();
        redis.execute(jedis -> {
            System.out.println(jedis.ping());
        });
   }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值