Redis数据库连接

1.建立maven项目pox.xml导入依赖包

           <dependency>
                <groupId>io.lettuce</groupId>
                <artifactId>lettuce-core</artifactId>
                <version>5.1.7.RELEASE</version>
            </dependency>

2.建立连接

public class RedisConnectionDemoA {
    public static final String REDIS_ADDRESS = "redis://"自己设置的验证信息"@redis-server:6379/0";

    public static void main(String[] args) {
        RedisURI redisURI = RedisURI.create(REDIS_ADDRESS);
        RedisClient redisClient = RedisClient.create(redisURI);
        StatefulRedisConnection<String,String> connect = redisClient.connect();
        System.out.println("【连接返回】"+connect);
        connect.close();
        redisClient.shutdown();
    }
}

3.创建连接池管理

public class RedisConnectionPool {
    private static final int MAX_IDLE = 10 ; // 最大的维持连接数量
    private static final int MIN_IDLE = 1 ; // 最小维持的可用数量
    private static final int MAX_TOTAL = 1 ; // 最大的可用数量
    private static final boolean TEST_ON_BORROW = true ;
    public static void main(String[] args) throws Exception {
        // 1、如果要进行连接池的操作,则肯定要进行一些连接池的基本配置
        GenericObjectPoolConfig config = new GenericObjectPoolConfig() ; // 配置对象
        config.setMaxIdle(MAX_IDLE); // 设置最大维持连接数量
        config.setMinIdle(MIN_IDLE); // 设置最小维持连接数量
        config.setMaxTotal(MAX_TOTAL); // 连接池总共的可用连接数量
        config.setTestOnBorrow(TEST_ON_BORROW); // 连接测试后返回
        // 2、连接池的创建需要依赖于连接的配置类实例
        GenericObjectPool<StatefulRedisConnection<String, String>> pool = ConnectionPoolSupport.createGenericObjectPool(() -> RedisConnectionUtil.getConnection(), config);
        for (int x = 0 ; x < 10 ; x ++) {
            StatefulRedisConnection<String, String> connection = pool.borrowObject();// 通过连接池获取一个连接
            System.out.println("【连接池对象】" + connection);
            // 发出一个“ping”命令
            System.out.println("【测试连接】ping = " + connection.sync().ping());
            connection.close();
        }
    }
}

4.连接池工具类。

public class RedisConnectionPool {
    private static final int MAX_IDLE = 10 ; // 最大的维持连接数量
    private static final int MIN_IDLE = 1 ; // 最小维持的可用数量
    private static final int MAX_TOTAL = 1 ; // 最大的可用数量
    private static final boolean TEST_ON_BORROW = true ;
    public static void main(String[] args) throws Exception {
        // 1、如果要进行连接池的操作,则肯定要进行一些连接池的基本配置
        GenericObjectPoolConfig config = new GenericObjectPoolConfig() ; // 配置对象
        config.setMaxIdle(MAX_IDLE); // 设置最大维持连接数量
        config.setMinIdle(MIN_IDLE); // 设置最小维持连接数量
        config.setMaxTotal(MAX_TOTAL); // 连接池总共的可用连接数量
        config.setTestOnBorrow(TEST_ON_BORROW); // 连接测试后返回
        // 2、连接池的创建需要依赖于连接的配置类实例
        GenericObjectPool<StatefulRedisConnection<String, String>> pool = ConnectionPoolSupport.createGenericObjectPool(() -> RedisConnectionUtil.getConnection(), config);
        for (int x = 0 ; x < 10 ; x ++) {
            StatefulRedisConnection<String, String> connection = pool.borrowObject();// 通过连接池获取一个连接
            System.out.println("【连接池对象】" + connection);
            // 发出一个“ping”命令
            System.out.println("【测试连接】ping = " + connection.sync().ping());
            connection.close();
        }
    }
}

 

转载于:https://www.cnblogs.com/fcitx/p/11048902.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值