zoukankan      html  css  js  c++  java
  • 一些常用的 redis 的操作配置(对String、hash)

    import java.util.List;
    import java.util.Map;
    
    import org.apache.logging.log4j.LogManager;
    import org.apache.logging.log4j.Logger;
    import redis.clients.jedis.Jedis;
    import redis.clients.jedis.JedisPool;
    
    /**
     * 配置一些常用的 redis 的操作
     */
    public class RedisClient {
    
        private Logger log = LogManager.getLogger(RedisClient.class);
    
        private JedisPool jedisPool;
    
    
        public void set(String key, String value) {
            Jedis jedis = null;
            try {
                jedis = jedisPool.getResource();
                jedis.set(key, value);
            }catch (Exception e){
                log.error(e.getMessage(),e);
                throw e;
            }finally {
                if(null != jedis){
                    jedis.close();
                }
            }
        }
    
        public String get(String key) {
    
            Jedis jedis = null;
            try {
                jedis = jedisPool.getResource();
                return jedis.get(key);
            } catch (Exception e){
                log.error(e.getMessage(),e);
                throw e;
            }finally {
                if(null != jedis){
                    jedis.close();
                }
            }
        }
        
        public void hset(String key, String field, String value){
            Jedis jedis = null;
            try {
                jedis = jedisPool.getResource();
                jedis.hset(key, field, value);
            }catch (Exception e){
                log.error(e.getMessage(),e);
                throw e;
            }finally {
                if(null != jedis){
                    jedis.close();
                }
            }
        }
    
        public String hget(String key, String field) {
            Jedis jedis = null;
            try {
                jedis = jedisPool.getResource();
                return jedis.hget(key, field);
            } catch (Exception e){
                log.error(e.getMessage(),e);
                throw e;
            }finally {
                if(null != jedis){
                    jedis.close();
                }
            }
        }
        
        public void hmset(String key, Map<String, String> hash){
            Jedis jedis = null;
            try {
                jedis = jedisPool.getResource();
                jedis.hmset(key, hash);
            }catch (Exception e){
                log.error(e.getMessage(),e);
                throw e;
            }finally {
                if(null != jedis){
                    jedis.close();
                }
            }
        }
    
        public List<String> hmget(String key, String... fields) {
            Jedis jedis = null;
            try {
                jedis = jedisPool.getResource();
                return jedis.hmget(key, fields);
            } catch (Exception e){
                log.error(e.getMessage(),e);
                throw e;
            }finally {
                if(null != jedis){
                    jedis.close();
                }
            }
        }
    
        public Long del(String key) {
    
            Jedis jedis = null;
            try {
                jedis = jedisPool.getResource();
                return jedis.del(key);
            } catch (Exception e){
                log.error(e.getMessage(),e);
                throw e;
            }finally {
                jedis.close();
            }
    
        }
    
    
        public JedisPool getJedisPool() {
            return jedisPool;
        }
    
        public void setJedisPool(JedisPool jedisPool) {
            this.jedisPool = jedisPool;
        }
    }
  • 相关阅读:
    将textarea滚动至底部:
    Web应用程序项目OxiteSite已配置为使用IIS.在本地计算机上找不到服务器
    使用Entity Framework时要注意的一些性能问题
    Python 输入输出
    Python 语言简介
    瞧一瞧,看一看,微信应用号(小程序)
    路遥眼里的河南人<平凡的世界>
    HTML5 本地存储实现购物车功能
    HTML5 本地存储的用法
    网站/域名如何备案?
  • 原文地址:https://www.cnblogs.com/zouhong/p/12074750.html
Copyright © 2011-2022 走看看