redis的使用(Java使用Jedis客户端连接redis)

一。添加依赖

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

二。例子:

1.创建Jedis对象操作redis

// 构造jedis对象
        Jedis jedis = new Jedis("127.0.0.1", 6379);
        // 向redis中添加数据
        jedis.set("mytest", "123bin");
        // 从redis中读取数据
        String value = jedis.get("mytest");
        System.out.println(value);
        // 关闭连接
        jedis.close();
 
 
2.通过连接池的方式
        // 构建连接池配置信息
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
        // 设置最大连接数
        jedisPoolConfig.setMaxTotal(50);
        // 构建连接池
        JedisPool jedisPool = new JedisPool(jedisPoolConfig, "127.0.0.1", 6379);
        // 从连接池中获取连接
        Jedis jedis = jedisPool.getResource();
        // 读取数据
        System.out.println(jedis.get("mytest"));
        // 将连接还回到连接池中
        jedisPool.returnResource(jedis);
        // 释放连接池
        jedisPool.close();//注意:实际使用中。不能关闭连接池,否则执行完一次,连接池就不能使用了
三。分片式集群的使用

// 构建连接池配置信息

        JedisPoolConfig poolConfig = new JedisPoolConfig();

        // 设置最大连接数

        poolConfig.setMaxTotal(50);

 

        // 定义集群信息

        List<JedisShardInfo> shards = new ArrayList<JedisShardInfo>();

        shards.add(new JedisShardInfo("127.0.0.1", 6379));

        shards.add(new JedisShardInfo("192.168.0.5", 6379));

 

        // 定义集群连接池

        ShardedJedisPool shardedJedisPool = new ShardedJedisPool(poolConfig, shards);

        ShardedJedis shardedJedis = null;

        try {

            // 从连接池中获取到jedis分片对象

            shardedJedis = shardedJedisPool.getResource();

            

//            for (int i = 0; i < 100; i++) {

//                shardedJedis.set("key_" + i, "value_" + i);

//            }

 

        System.out.println(shardedJedis.get("key_49"));

            System.out.println(shardedJedis.get("key_7"));

 

        } catch (Exception e) {

            e.printStackTrace();

        } finally {

            if (null != shardedJedis) {

                // 关闭,检测连接是否有效,有效则放回到连接池中,无效则重置状态

                shardedJedis.close();

            }

        }

 

        // 关闭连接池

        shardedJedisPool.close();

posted @ 2018-09-04 23:56  梦浍烈风灵  阅读(1758)  评论(0编辑  收藏  举报