package com.doumee.core.utils.redis; 
 | 
  
 | 
import org.springframework.data.redis.core.RedisTemplate; 
 | 
import org.springframework.data.redis.core.StringRedisTemplate; 
 | 
  
 | 
import java.util.concurrent.TimeUnit; 
 | 
  
 | 
public class RedisUtil { 
 | 
    /** 
 | 
     * 添加一个Value为String 
 | 
     * @param stringRedisTemplate 
 | 
     * @param key 
 | 
     * @param str 
 | 
     */ 
 | 
    public static void addString( StringRedisTemplate stringRedisTemplate, String key, String str) { 
 | 
        //1,添加一个Value为String 
 | 
        stringRedisTemplate.opsForValue().set(key, str); 
 | 
  
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 根据key删除字符串缓存 
 | 
     * @param stringRedisTemplate 
 | 
     * @param key 
 | 
     */ 
 | 
    public static void delString( StringRedisTemplate stringRedisTemplate, String key ) { 
 | 
        //1,添加一个Value为String 
 | 
        stringRedisTemplate.delete(key); 
 | 
  
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 根据key删除对象数据 
 | 
     * @param redisTemplate 
 | 
     * @param key 
 | 
     */ 
 | 
    public static void deleteObject( RedisTemplate<String, Object> redisTemplate  , String key ) { 
 | 
  
 | 
        redisTemplate.delete(key); 
 | 
  
 | 
    } 
 | 
    /** 
 | 
     * 添加一个Value为对象 
 | 
     * @param redisTemplate 
 | 
     * @param key 
 | 
     * @param obj 
 | 
     */ 
 | 
    public static void addObject(RedisTemplate<String, Object> redisTemplate  , String key, Object obj) { 
 | 
        redisTemplate.opsForValue().set(key, obj); 
 | 
    } 
 | 
    /** 
 | 
     * 添加一个Value为对象 
 | 
     * @param redisTemplate 
 | 
     * @param key 
 | 
     * @param obj 
 | 
     */ 
 | 
    public static void addObject(RedisTemplate<String, Object> redisTemplate  , String key, Object obj,long time) { 
 | 
//        redisTemplate.opsForValue().set(key, obj); 
 | 
        redisTemplate.opsForValue().set(key,obj,time, TimeUnit.SECONDS); 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 根据参数对象类型,返回相应缓存对象数据 
 | 
     * @param stringRedisTemplate 
 | 
     * @param key 
 | 
     * @return 
 | 
     */ 
 | 
    public static String getString(StringRedisTemplate stringRedisTemplate, String key){ 
 | 
       String val = stringRedisTemplate.opsForValue().get(key); 
 | 
        return val; 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 根据参数对象类型,返回相应缓存对象数据 
 | 
     * @param redisTemplate 
 | 
     * @param key 
 | 
     * @param clazz 
 | 
     * @param <T> 
 | 
     * @return 
 | 
     */ 
 | 
    public static <T> T getObject(RedisTemplate<String, Object> redisTemplate  , String key,Class<T> clazz){ 
 | 
        T t = (T) redisTemplate.opsForValue().get(key); 
 | 
        return t; 
 | 
    } 
 | 
  
 | 
} 
 |