Class RedisOps

java.lang.Object
top.tangyh.basic.cache.redis.BaseRedis
top.tangyh.basic.cache.redis2.RedisOps

public class RedisOps extends BaseRedis
Version:
v1.0
Author:
tangyh
  • Constructor Details

    • RedisOps

      public RedisOps(org.springframework.data.redis.core.RedisTemplate<String,Object> redisTemplate, org.springframework.data.redis.core.StringRedisTemplate stringRedisTemplate, boolean defaultCacheNullVal)
  • Method Details

    • get

      public <T> CacheResult<T> get(@NonNull String key, boolean... cacheNullValues)
      返回与键 key 相关联的 value 值

      如果键 key 不存在, 那么返回特殊值 null ; 否则, 返回键 key 的值。

      Parameters:
      key - 一定不能为 null.
      cacheNullValues - 是否缓存空值
      Returns:
      如果键 key 不存在, 那么返回特殊值 null ; 否则, 返回键 key 的值。
      See Also:
    • get

      public <T> CacheResult<T> get(@NonNull String key, Function<String,T> loader, boolean... cacheNullValues)
      返回与键 key 相关联的 value 值

      如果值不存在, 那么调用 loader 方法获取数据后,set 到缓存

      Parameters:
      key - 一定不能为 null.
      loader - 缓存加载器
      cacheNullValues - 是否缓存空值
      Returns:
      如果redis中没值,先加载loader 的数据,若加载loader 的值为null,直接返回, 否则 设置后loader值后返回。
      See Also:
    • getSet

      public <T> CacheResult<T> getSet(@NonNull String key, Object value)
      将键 key 的值设为 value , 并返回键 key 在被设置之前的旧值。

      返回给定键 key 的旧值。 如果键 key 没有旧值, 也即是说, 键 key 在被设置之前并不存在, 那么命令返回 nil 。 当键 key 存在但不是字符串类型时, 命令返回一个错误。

      Parameters:
      key - 一定不能为 null.
      value - 值
      Returns:
      如果键 key 不存在, 那么返回特殊值 null ; 否则, 返回给定键 key 的旧值
      See Also:
    • get

      @Nullable public <T> CacheResult<T> get(@NonNull CacheKey key, boolean... cacheNullValues)
      返回与键 key 相关联的 value 值

      如果键 key 不存在, 那么返回特殊值 null ; 否则, 返回键 key 的值。

      Parameters:
      key - 一定不能为 null.
      cacheNullValues - 是否缓存空值
      Returns:
      如果键 key 不存在, 那么返回特殊值 null ; 否则, 返回键 key 的值。
      See Also:
    • get

      @Nullable public <T> CacheResult<T> get(@NonNull CacheKey key, Function<CacheKey,? extends T> loader, boolean... cacheNullValues)
      返回与键 key 相关联的 value 值

      如果键 key 不存在, 那么返回特殊值 null ; 否则, 返回键 key 的值。

      Parameters:
      key - 一定不能为 null.
      loader - 加载器
      cacheNullValues - 是否缓存空值
      Returns:
      如果键 key 不存在, 那么返回特殊值 null ; 否则, 返回键 key 的值。
      See Also:
    • mGet

      public <T> List<CacheResult<T>> mGet(@NonNull String... keys)
      返回所有(一个或多个)给定 key 的值, 值按请求的键的顺序返回。 如果给定的 key 里面,有某个 key 不存在,那么这个 key 返回特殊值 nil
      Parameters:
      keys - 一定不能为 null.
      Returns:
      返回一个列表, 列表中包含了所有给定键的值,并按给定key的顺序排列
      See Also:
    • mGet

      public <T> List<CacheResult<T>> mGet(@NonNull CacheKey... keys)
      返回所有(一个或多个)给定 key 的值, 值按请求的键的顺序返回。 如果给定的 key 里面,有某个 key 不存在,那么这个 key 返回特殊值 nil
      Parameters:
      keys - 一定不能为 null.
      Returns:
      返回一个列表, 列表中包含了所有给定键的值,并按给定key的顺序排列
      See Also:
    • mGet

      public <T> List<CacheResult<T>> mGet(@NonNull List<String> keys)
      返回所有(一个或多个)给定 key 的值, 值按请求的键的顺序返回。 如果给定的 key 里面,有某个 key 不存在,那么这个 key 返回特殊值 nil
      Parameters:
      keys - 一定不能为 null.
      Returns:
      返回一个列表, 列表中包含了所有给定键的值,并按给定key的顺序排列
      See Also:
    • mGetByCacheKey

      public <T> List<CacheResult<T>> mGetByCacheKey(@NonNull Collection<CacheKey> cacheKeys)
      返回所有(一个或多个)给定 key 的值, 值按请求的键的顺序返回。 如果给定的 key 里面,有某个 key 不存在,那么这个 key 返回特殊值 nil
      Parameters:
      cacheKeys - 一定不能为 null.
      Returns:
      返回一个列表, 列表中包含了所有给定键的值,并按给定key的顺序排列
      See Also:
    • hGet

      @Nullable public <T> CacheResult<T> hGet(@NonNull String key, @NonNull Object field, boolean... cacheNullValues)
      返回哈希表 key 中给定域 field 的值。
      Parameters:
      key - 一定不能为 null.
      field - 一定不能为 null.
      cacheNullValues - 是否缓存空值
      Returns:
      默认情况下返回给定域的值, 如果给定域不存在于哈希表中, 又或者给定的哈希表并不存在, 那么命令返回 nil
      See Also:
    • hGet

      @Nullable public <T> CacheResult<T> hGet(@NonNull String key, @NonNull Object field, BiFunction<String,Object,T> loader, boolean... cacheNullValues)
      返回哈希表 key 中给定域 field 的值。
      Parameters:
      key - 一定不能为 null.
      field - 一定不能为 null.
      loader - 加载器
      cacheNullValues - 是否缓存空值
      Returns:
      默认情况下返回给定域的值, 如果给定域不存在于哈希表中, 又或者给定的哈希表并不存在, 那么命令返回 nil
      See Also:
    • hGet

      @Nullable public <T> CacheResult<T> hGet(@NonNull CacheHashKey key, boolean... cacheNullValues)
      返回哈希表 key 中给定域 field 的值。
      Parameters:
      key - 一定不能为 null.
      cacheNullValues - 是否缓存空值
      Returns:
      默认情况下返回给定域的值, 如果给定域不存在于哈希表中, 又或者给定的哈希表并不存在, 那么命令返回 nil
      See Also:
    • hGet

      @Nullable public <T> CacheResult<T> hGet(@NonNull CacheHashKey key, Function<CacheHashKey,T> loader, boolean... cacheNullValues)
      返回哈希表 key 中给定域 field 的值。
      Parameters:
      key - 一定不能为 null.
      cacheNullValues - 是否缓存空值
      loader - 加载器
      Returns:
      默认情况下返回给定域的值, 如果给定域不存在于哈希表中, 又或者给定的哈希表并不存在, 那么命令返回 nil
      See Also:
    • hmGet

      public List<CacheResult<Object>> hmGet(@NonNull String key, @NonNull Object... fields)
      返回哈希表 key 中,一个或多个给定域的值。 如果给定的域不存在于哈希表,那么返回一个 nil 值。 因为不存在的 key 被当作一个空哈希表来处理,所以对一个不存在的 key 进行 HMGET 操作将返回一个只带有 nil 值的表。
      Parameters:
      key - 一定不能为 null.
      fields - 一定不能为 null.
      See Also:
    • hmGet

      public List<CacheResult<Object>> hmGet(@NonNull String key, @NonNull List<Object> fields)
      返回哈希表 key 中,一个或多个给定域的值。 如果给定的域不存在于哈希表,那么返回一个 nil 值。 因为不存在的 key 被当作一个空哈希表来处理,所以对一个不存在的 key 进行 HMGET 操作将返回一个只带有 nil 值的表。
      Parameters:
      key - 一定不能为 null.
      fields - 一定不能为 null.
      See Also:
    • hVals

      public <HV> List<CacheResult<HV>> hVals(@NonNull String key)
      返回哈希表 key 中所有域的值。
      Parameters:
      key - 一定不能为 null.
      Returns:
      一个包含哈希表中所有值的表。
      See Also:
    • hGetAll

      public <K, V> Map<K,CacheResult<V>> hGetAll(@NonNull String key)
      返回哈希表 key 中,所有的域和值。 在返回值里,紧跟每个域名(field name)之后是域的值(value),所以返回值的长度是哈希表大小的两倍。
      Parameters:
      key - 一定不能为 null.
      Returns:
      以列表形式返回哈希表的域和域的值
      See Also:
    • hGetAll

      public <K, V> Map<K,CacheResult<V>> hGetAll(@NonNull CacheHashKey key)
    • hGetAll

      @Nullable public <K, V> Map<K,CacheResult<V>> hGetAll(@NonNull CacheHashKey key, Function<CacheHashKey,Map<K,V>> loader, boolean... cacheNullValues)
      返回哈希表 key 中给定域 field 的值。
      Parameters:
      key - 一定不能为 null.
      cacheNullValues - 是否缓存空值
      loader - 加载器
      Returns:
      默认情况下返回给定域的值, 如果给定域不存在于哈希表中, 又或者给定的哈希表并不存在, 那么命令返回 nil
      See Also: