zoukankan      html  css  js  c++  java
  • java对于Redis中jedis的操作

    package com.answer.redis;
    
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    import java.util.Set;
    
    import redis.clients.jedis.Jedis;
    
    public class RedisTool {
        
        Jedis jedis = null;
        
        public RedisTool(boolean flag) {
            //连接REDIS数据库
            jedis = new Jedis("hadoop1");
            //密码认证
            if (flag) {
                jedis.auth("123456");    
            }
        }
        
        
        /**
         * @describe 判断key是否存在
         * */
        public boolean exists(String key){
            return jedis.exists(key);
        }
    
        
        /**
         * @describe 往REDIS数据库中添加信息(数组形式)
         * */
        public void lpush_arr(String key, String[] values) {
            jedis.lpush(key, values);
        }
        
        
        /**
         * @describe 返回key的类型
         * */
        public Object type(String key) {
            return jedis.type(key);
        }
        
        /**
         * @describe 随机返回一个key
         * */
        public Object randomKey() {
            return jedis.randomKey();
        }
        
        /**
         * @describe 返回数据库中key的数目
         * */
        public long dbSize() {
            return jedis.dbSize();
        }
        
        
        /**
         * @describe 设置一个可以的存活时间
         * @param seconds 存活时间
         * */
        public void expire(String key, int seconds) {
            jedis.expire(key, seconds);
        }
        
        /**
         * @describe 获取一个key的剩余存活时间
         * */
        public long ttl(String key) {
            return jedis.ttl(key);
        }
        
        /**
         * @describe 删除key及对应的filed-value
         * @param key
         * */
        public void del(String key) {
            jedis.del(key);
        }
        
        
        /*
         * ###############################    String    ###############################
         * */
        
        /**
         * @describe 获取key所对应的值(String)
         * */
        public String get_str(String key) {
            return jedis.get(key);
        }
        
        
        /**
         * @describe 向REDIS存放一组key-value(String)
         * */
        public void set_str(String key, String value) {
            jedis.set(key, value);
        }
        
        
        /**
         * @describe 在key对应的值后追加value(String)
         * */
        public void append_str(String key, String value) {
            jedis.append(key, value);
        }
        
        
        /**
         * @describe 给key值所对应的value加1,前提value值是数字(String)
         * */
        public void incr_str(String key) {
            jedis.incr(key);
        }
        
        
        /**
         * @describe 给key值所对应的value减1,前提value值是数字(String)
         * */
        public void decr_str(String key) {
            jedis.decr(key);
        }
        
        
        /**
         * @describe 给key值所对应的value加上NUM(String)
         * @param num 要加去的数
         * */
        public void incrBy_str(String key, long num) {
            jedis.incrBy(key, num);
        }
        
        
        /**
         * @describe 给key值所对应的value减去NUM(String)
         * @param num 要减去的数
         * */
        public void decrBy_str(String key, long num) {
            jedis.decrBy(key, num);
        }
        
        
        /**
         * @describe 截取key所对应的value的字符串(String)
         * @param start start从0开始
         * @param end 截取到value的end位置
         * */
        public String substr_str(String key, int start, int end) {
            return jedis.substr(key, start, end);
        }
        
        
        /*
         * ###############################    List    ###############################
         * */
        
        /**
         * @describe 在key对应的list尾添加value(List)
         * */
        public void rpush_list(String key, String[] value) {
            jedis.rpush(key, value);
        }
        
        
        /**
         * @describe 在key对应的list头添加value(List)
         * */
        public void lpush_list(String key, String[] value) {
            jedis.lpush(key, value);
        }
        
        
        /**
         * @describe 获取key对应的list的长度(List)
         * @return 返回key对应的list的长度
         * */
        public long llen_list(String key) {
            return jedis.llen(key);
        }
        
        
        /**
         * @describe 返回key对应的list中从start至end的元素(List)
         * @param start 附:start从0开始算起
         * @return 返回key对应的list中从start至end的元素
         * */
        public List<String> lrange_list(String key, int start, int end) {
            return jedis.lrange(key, start, end);
        }
        
        
        /**
         * @describe 获取key所对应的list的第index个元素(List)
         * @param index 附:index从0开始算起
         * @return 返回key所对应的list的第index个元素
         * */
        public String lindex_list(String key, int index) {
            return jedis.lindex(key, index);
        }
        
        
        /**
         * @describe 给key所对应的list的第index元素赋值(List)
         * @param index 附:index从0开始算起且index的取值在list的长度范围之内
         * */
        public void lset_list(String key, int index, String value) {
            jedis.lset(key, index, value);
        }
        
        
        /**
         * @describe 删除key对应的list的首元素并返回该元素(List)
         * @return 返回被删除的元素
         * */
        public String lpop_list(String key) {
            return jedis.lpop(key);
        }
        
        
        /**
         * @describe 删除key对应的list的尾元素并返回该元素(List)
         * @return 返回被删除的元素
         * */
        public String rpop_list(String key) {
            return jedis.rpop(key);
        }
        
        
        /*
         * ###############################    Set    ###############################
         * */
        
        /**
         * @describe 往REDIS中存放数据(Set)
         * @return 返回存放的元素个数
         * */
        public long sadd_set(String key, String[] elements) {
            return jedis.sadd(key, elements);
        }
        
        
        /**
         * @describe 删除key对应的value中的elements元素(Set)
         * @return 返回删除的元素个数
         * */
        public long srem_set(String key, String[] elements) {
            return jedis.srem(key, elements);
        }
        
        
        /**
         * @describe 获取key对应的value的元素个数(Set)
         * @return 返回key对应的value的元素个数
         * */
        public long scard_set(String key) {
            return jedis.scard(key);
        }
        
        
        /**
         * @describe element是否是key对应的value中的元素(Set)
         * @return true|false
         * */
        public boolean sismember_set(String key, String element) {
            return jedis.sismember(key, element);
        }
        
        
        /**
         * @describe 获取多个key即keys的交集(Set)
         * @return 返回keys的交集
         * */
        public Set<String> sinter_set(String[] keys) {
            return jedis.sinter(keys);
        }
        
        
        /*
         * ###############################    Hash    ###############################
         * */
        
        /**
         * @describe 向名称为key的hash中添加filed,其field与value是一对键值对(Hash)
         * */
        public void hset_hash(String key, String field, String value) {
            jedis.hset(key, field, value);
        }
        
        
        /**
         * @describe 获取key下的hash中filed所对应的value值(Hash)
         * @return value
         * */
        public String hget_hash(String key, String field) {
            return jedis.hget(key, field);
        }
        
        
        /**
         * @describe 获取key下的hash中filed所对应的value值(多个field,因此返回List结果集)(Hash)
         * @return value
         * */
        public List<String> hmget_hash(String key, String[] fields) {
            return jedis.hmget(key, fields);
        }
        
        
        /**
         * @describe 往key中存储一个map对象(Hash)
         * @return OK
         * */
        public String hmset_hash(String key, Map<String, String> hash) {
            return jedis.hmset(key, hash);
        }
        
        
        /**
         * @describe 名称为key的hash中是否存在键为field的域(Hash)
         * @return true false
         * */
        public boolean hexists_hash(String key, String field) {
            return jedis.hexists(key, field);
        }
        
        
        /**
         * @describe 删除名称为key的hash中键为field的域(Hash)
         * @return 返回删除的个数
         * */
        public long hdel_hash(String key, String[] fields) {
            return jedis.hdel(key, fields);
        }
        
        
        /**
         * @describe 返回名称为key的hash中元素个数(Hash)
         * @return 返回key对应的hash的元素个数
         * */
        public long hlen_hash(String key) {
            return jedis.hlen(key);
        }
        
        
        /**
         * @describe 返回名称为key的hash中所有键即field(Hash)
         * @return 返回Set结果集
         * */
        public Set<String> hkeys_hash(String key) {
            return jedis.hkeys(key);
        }
        
        
        /**
         * @describe 返回名称为key的hash中所有键对应的value(Hash)
         * @return 返回List结果集
         * */
        public List<String> hkeys_hvals(String key) {
            return jedis.hvals(key);
        }
        
        
        /**
         * @describe 返回名称为key的hash中所有的键(field)及其对应的value(Hash)
         * @return 返回Map结果集
         * */
        public Map<String, String> hgetall_hash(String key) {
            return jedis.hgetAll(key);
        }
        
        
        /**
         * @describe 自定义引用JEDIS内置方法
         * @category 由于有些方法不是很常用,所以定义此方法,方便调用其他本类未定义方法
         * */
        public Jedis getJedis() {
            return jedis;
        }
    }

     

    芸芸众生,我只是一个码农,我正在努力的一步一个台阶。。。

    改编至:http://www.cnblogs.com/edisonfeng/p/3571870.html

  • 相关阅读:
    hibernate 映射<二>一对一主键关联
    C# Convert Type to T
    008 OS模块
    001基础知识补充与拓展
    005Buffer(缓冲区)
    009path模块
    002nodejs简介与安装
    007http模块
    004NPM包管理器
    003nodejs的模块化
  • 原文地址:https://www.cnblogs.com/JimLy-BUG/p/5196153.html
Copyright © 2011-2022 走看看