Java redis 之 Jedis

好记忆不如烂笔头,平时用到的东西,还是要留下点东西做好笔记的、

redis 的使用我就不多说了,现在这个玩意用的人也是蛮多蛮多的、我就通过看了 API ,总结了下一下几个方法可以供参考,

官网:http://www.redis.cn 

常用命令:http://blog.csdn.net/yczz/article/details/7656910

前提是 redis 的配置都OK,不多说了,直接上代码吧:


import java.util.List;

import java.util.Map;

import java.util.Set;


import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Component;


import com.nonobank.app.utils.StringUtils;


import redis.clients.jedis.Jedis;

import redis.clients.jedis.JedisPool;


/**

 * redis工具类

 *        

 */

@Component("redisUtil")

public class RedisUtil {

    @Autowired

    private JedisPool redisPool;

    

    public Jedis getJedis() {

        return redisPool.getResource();

    }

    

    public String set(String key, String value) {

        Jedis jedis = getJedis();

        try {

            return jedis.set(key, value);

        }

        finally {

            jedis.close();

        }

    }

    

    /**

     *

     * @param key

     * @param value

     * @param expire

     *            seconds(int)

     * @return

     */

    public String set(String key, String value, int expireTime) {

        Jedis jedis = getJedis();

        try {

            return jedis.setex(key, expireTime, value);

        }

        finally {

            jedis.close();

        }

    }

    

    public String get(String key) {

        Jedis jedis = getJedis();

        try {

            return jedis.get(key);

        }

        finally {

            jedis.close();

        }

    }

    

    public Long del(final String...keys) {

        Jedis jedis = getJedis();

        try {

            return jedis.del(keys);

        }

        finally {

            jedis.close();

        }

    }

    

    public Long del(String key) {

        Jedis jedis = getJedis();

        try {

            return jedis.del(key);

        }

        finally {

            jedis.close();

        }

    }

    

    /**

     * 失效时间-

     * 

     * @param key

     * @param map

     * @param expireTime

     */

    public boolean setMap(Stringkey, Map<String, String>map, int expireTime) {

        Jedis jedis = getJedis();

        try {

            String result = jedis.hmset(key, map);

            if (StringUtils.isNotEmpty(result) &&result.equalsIgnoreCase("OK")) {

                jedis.expire(key,expireTime);

                return true;

            }

            else {

                return false;

            }

        }

        finally {

            jedis.close();

        }

    }

    

    /**

     * 获得结果 set

     * 

     * @param key

     */

    public String getMapKey(String key, String field) {

        Jedis jedis = getJedis();

        try {

            String result = jedis.hget(key, field);

            if (StringUtils.isNotEmpty(result) &&result.equalsIgnoreCase("nil")) {

                return null;

            }

            else {

                return result;

            }

        }

        finally {

            jedis.close();

        }

    }

    

    /**

     * 获得结果 list

     * 

     * @param key

     */

    public List<String> getMapVal(String key, String field) {

        Jedis jedis = getJedis();

        try {

            return jedis.hmget(key, field);

        }

        finally {

            jedis.close();

        }

    }

    

    /**

     * 获得结果 set

     * 

     * @param key

     */

    public Set<String> getMapKeys(String key) {

        Jedis jedis = getJedis();

        try {

            return jedis.hkeys(key);

        }

        finally {

            jedis.close();

        }

    }

    

    /**

     * 获得结果 list

     * 

     * @param key

     */

    public List<String> getMapVals(String key) {

        Jedis jedis = getJedis();

        try {

            return jedis.hvals(key);

        }

        finally {

            jedis.close();

        }

    }

    

    /**

     * 失效时间:一个小时

     * 

     * @param key

     * @param list

     */

    public void setPushList(Stringkey, List<String>list, int expireTime) {

        Jedis jedis = getJedis();

        try {

            for (String str : list) {

                jedis.lpush(key,str);

            }

            jedis.expire(key,expireTime);

        }

        finally {

            jedis.close();

        }

    }

    

    /**

     * 失效时间-

     * 

     * @param key

     * @param list

     * @param expireTime

     */

    public long setArrayList(Stringkey, String[]arrays,int expireTime) {

        Jedis jedis = getJedis();

        try {

            long rows =jedis.sadd(key,arrays);

            if (rows == 1 ||rows == 0) {

                jedis.expire(key,expireTime);

            }

            return rows;

        }

        finally {

            jedis.close();

        }

    }

    

    /**

     * 获取整个列表值

     * 

     * @param key

     */

    public List<String> getList(String key) {

        Jedis jedis = getJedis();

        try {

            return jedis.lrange(key, 0, -1);

        }

        finally {

            jedis.close();

        }

    }

    

}


redis API中还有很多的方法,这就不一一列举了、用到的时候,再去好好研究一下吧。。。






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值