RedisUtils集合redis常用操作

package com.gyc.common; 

import org.springframework.beans.factory.annotation.Autowired;  
import org.springframework.data.redis.core.RedisTemplate;  
import org.springframework.data.redis.core.ValueOperations;  
import org.springframework.stereotype.Component;  
import java.io.Serializable;  
import java.util.Set;  
import java.util.concurrent.TimeUnit;  
  
/** 
 * Created by messigao  
 */  
@SuppressWarnings("unchecked")  
@Component  
public class RedisUtils {  
    @SuppressWarnings("rawtypes")  
    @Autowired  
    private RedisTemplate redisTemplate;  
    /** 
     * 批量刪除對(duì)應(yīng)的value 
     * 
     * @param keys 
     */  
    public void remove(final String... keys) {  
        for (String key : keys) {  
          remove(key);  
        }  
    }  
    /** 
     * 批量刪除key 
     * 
     * @param pattern 
     */  
    public void removePattern(final String pattern) {  
        Set<Serializable> keys = redisTemplate.keys(pattern);  
        if (keys.size() > 0)  
            redisTemplate.delete(keys);  
    }  
    /** 
     * 刪除對(duì)應(yīng)的value 
     * 
     * @param key 
     */  
    public void remove(final String key) {  
        if (exists(key)) {  
       redisTemplate.delete(key);  
        }  
    }  
    /** 
     * 判斷緩存中是否有對(duì)應(yīng)的value 
     * 
     * @param key 
     * @return 
     */  
    public boolean exists(final String key) {  
        return redisTemplate.hasKey(key);  
    }  
    /** 
     * 讀取緩存 
     * 
     * @param key 
     * @return 
     */  
    public Object get(final String key) {  
        Object result = null;  
        ValueOperations<Serializable, Object> operations = redisTemplate.opsForValue();  
        result = operations.get(key);  
        return result;  
    }  
    /** 
     * 寫(xiě)入緩存 
     * 
     * @param key 
     * @param value 
     * @return 
     */  
    public boolean set(final String key, Object value) {  
        boolean result = false;  
        try {  
             ValueOperations<Serializable, Object> operations  = redisTemplate.opsForValue();  
            operations.set(key, value);  
            result = true;  
        } catch (Exception e) {  
            e.printStackTrace();  
        }  
        return result;  
    }  
    /** 
     * 寫(xiě)入緩存 
     * 
     * @param key 
     * @param value 
     * @return 
     */  
    public boolean set(final String key, Object value, Long expireTime) {  
        boolean result = false;  
        try {  
          ValueOperations<Serializable, Object> operations =         redisTemplate.opsForValue();  
            operations.set(key, value);  
            redisTemplate.expire(key, expireTime, TimeUnit.SECONDS);  
            result = true;  
        } catch (Exception e) {  
          e.printStackTrace();  
        }  
        return result;  
    }  
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • redis中set的常用操作,功能類(lèi)似于java中的set 向一個(gè)set集合中加值 遍歷set中的所有元素 檢查s...
    吐痰高手閱讀 5,395評(píng)論 0 0
  • Zset:有序的set,在集合的基礎(chǔ)上進(jìn)行延伸有序,其K是sring V是一個(gè)鍵值對(duì),這個(gè)鍵值對(duì)是分?jǐn)?shù)score:...
    先生_呂閱讀 25,333評(píng)論 1 1
  • set:可以將其看成一個(gè)值不能重復(fù)的鏈表,與list的最大差別就是set不可重復(fù) 操作: 【1 : sadd/sm...
    先生_呂閱讀 10,131評(píng)論 0 0
  • 2016年夏天我回國(guó)探親時(shí),距離我離開(kāi)故土有四年半了。四年半的時(shí)間,祖國(guó)變化有多大? 北京的房?jī)r(jià)又漲了,而且漲得離...
    藍(lán)柿閱讀 379評(píng)論 5 7
  • 現(xiàn)在,去Python的官網(wǎng)下載對(duì)應(yīng)你操作系統(tǒng)的Python版本。記得選擇Python3.x版本哦。 下載下來(lái)以后就...
    你好星期四閱讀 230評(píng)論 0 0

友情鏈接更多精彩內(nèi)容