Java操作Redis工具类

Redis安装步骤可参考:

https://www.cnblogs.com/jonban/p/9217221.html

 


引入redis依赖:

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

 

RedisUtil.java

package com.chao.redis;

import redis.clients.jedis.JedisPoolConfig;
import redis.clients.jedis.JedisShardInfo;
import redis.clients.jedis.ShardedJedis;
import redis.clients.jedis.ShardedJedisPool;

import java.util.ArrayList;
import java.util.List;

public class RedisUtil {

    private static ShardedJedisPool jedisPool = null;

    static {
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();

        //设置最大对象数
        jedisPoolConfig.setMaxTotal(20);

        //设置最大能够保持空闲状态的对象数
        jedisPoolConfig.setMaxIdle(10);

        //超出时间
        jedisPoolConfig.setMaxWaitMillis(10000);

        //设置获取连接的时候检查有效性,默认false
        jedisPoolConfig.setTestOnBorrow(true);

        //在返回object时,对返回的connection进行validateObject校验
        jedisPoolConfig.setTestOnReturn(true);

        //如果是集群,全部加入到list中
        List<JedisShardInfo> list = new ArrayList<JedisShardInfo>();
        JedisShardInfo jedisShardInfo = new JedisShardInfo("192.168.19.197","6379");
        jedisShardInfo.setPassword("redis123.");

        list.add(jedisShardInfo);

        jedisPool = new ShardedJedisPool(jedisPoolConfig,list);
    }

    /**
     * 从连接池中获取一个ShardedJedis对象
     */
    public static ShardedJedis getJedis() {
        return jedisPool.getResource();
    }

    /**
     * 关闭ShardedJedis,放回池中
     */
    public static void closeJedis(ShardedJedis shardedJedis) {
        shardedJedis.close();
    }

    /**
     * 通过key获取String类型value
     * @param key
     * @return
     */
    public static String get(String key) {
        ShardedJedis jedis = jedisPool.getResource();
        return jedis.get(key);
    }

    /**
     * 设置String类型的key和value
     * @param key
     * @param value
     * @return
     */
    public static String set(String key,String value) {
        ShardedJedis jedis = jedisPool.getResource();
        return jedis.set(key,value);
    }

    /**
     * 删除指定key
     * @param key
     * @return
     */
    public static Long del(String key) {
        ShardedJedis jedis = jedisPool.getResource();
        return jedis.del(key);
    }

    /**
     * 左侧放入集合
     * @param key
     * @param values
     * @return
     */
    public static Long lpush(String key,String... values){
        ShardedJedis jedis = jedisPool.getResource();
        return jedis.lpush(key,values);
    }

    /**
     * 左侧弹出一个元素
     * @param key
     * @return
     */
    public static String lpop(String key) {
        ShardedJedis jedis = jedisPool.getResource();
        return jedis.lpop(key);
    }

    /**
     * 右侧放入集合
     * @param key
     * @param values
     * @return
     */
    public static Long rpush(String key,String... values) {
        ShardedJedis jedis = jedisPool.getResource();
        return jedis.rpush(key,values);
    }

    /**
     * 右侧弹出一个元素
     * @param key
     * @return
     */
    public static String rpop(String key) {
        ShardedJedis jedis = jedisPool.getResource();
        return jedis.rpop(key);
    }
}

 

posted @ 2021-01-21 17:11  木头叔  阅读(798)  评论(0)    收藏  举报