依赖

    <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>3.1.0</version>
        </dependency>

代码

    public static void main(String[] args) {
        //池的基本配置
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
        //是否启用后进先出
        jedisPoolConfig.setLifo(true);
        //最大空闲连接数
        jedisPoolConfig.setMaxIdle(8);
        //最大连接数
        jedisPoolConfig.setMaxTotal(8);
        //获取连接时的最大等待毫秒数(如果设置为阻塞时BlockWhenExhausted),如果超时就抛异常, 小于零:阻塞不确定的时间,  默认-1
        jedisPoolConfig.setMaxWaitMillis(-1);
        //每次逐出检查时 逐出的最大数目 如果为负数就是 : 1/abs(n), 默认3
        jedisPoolConfig.setNumTestsPerEvictionRun(3);
        //对象空闲多久后逐出, 当空闲时间>该值 且 空闲连接>最大空闲数 时直接逐出,不再根据MinEvictableIdleTimeMillis判断 ?(默认逐出策略)
        jedisPoolConfig.setSoftMinEvictableIdleTimeMillis(1800000);
        //在获取连接的时候检查有效性, 默认false
        jedisPoolConfig.setTestOnBorrow(false);
        //在空闲时检查有效性, 默认false
        jedisPoolConfig.setTestWhileIdle(false);
        List<JedisShardInfo> shardInfos = new ArrayList<>();
        Set<HostAndPort> hostAndPortSet = new HashSet<>();
        hostAndPortSet.add(new HostAndPort("192.168.18.121", 7000));
        JedisCluster jedisCluster = new JedisCluster(hostAndPortSet, jedisPoolConfig);
        jedisCluster.set("person:name", "123");
        System.out.println(jedisCluster.get("person:name"));
    }