接口 CachePlusOps
- 所有超级接口:
CacheOps
- 所有已知实现类:
CaffeineOpsImpl,RedisOpsImpl
缓存增强
使用本类接口时, 请切记,生产环境一定要配置成 REDIS !!!
- 作者:
- zuihou
-
方法概要
修饰符和类型方法说明为给定 key 设置生存时间,当 key 过期时(生存时间为 0 ),它会被自动删除。删除哈希表 key 中的一个或多个指定域,不存在的域将被忽略。hDel(CacheHashKey cacheHashKey) 删除哈希表 key 中的指定域,不存在的域将被忽略。hExists(CacheHashKey cacheHashKey) 检查给定域 field 是否存在于哈希表 hash 当中<T> ThGet(CacheHashKey key, boolean... cacheNullValues) 返回哈希表 key 中给定域 field 的值。<T> ThGet(CacheHashKey key, Function<CacheHashKey, T> loader, boolean... cacheNullValues) 返回哈希表 key 中给定域 field 的值。<K,V> Map<K, V> hGetAll(CacheHashKey key) 返回哈希表 key 中,所有的域和值。<K,V> Map<K, V> hGetAll(CacheHashKey key, Function<CacheHashKey, Map<K, V>> loader, boolean... cacheNullValues) 返回哈希表 key 中,所有的域和值。hIncrBy(CacheHashKey key, double increment) 为哈希表 key 中的域 field 的值加上增量 increment 。hIncrBy(CacheHashKey key, long increment) 为哈希表 key 中的域 field 的值加上增量 increment 。hKeys(CacheHashKey key) 返回哈希表 key 中的所有域。hLen(CacheHashKey key) 返回哈希表 key 中域的数量。voidhSet(CacheHashKey key, Object value, boolean... cacheNullValues) 将哈希表 key 中的域 field 的值设为 value 。hVals(CacheHashKey key) 返回哈希表 key 中所有域的值。查找所有符合给定模式 pattern 的 key 。移除给定 key 的生存时间,将这个 key 从『易失的』(带生存时间 key )转换成『持久的』(一个不带生存时间、永不过期的 key )。以毫秒为单位,返回给定 key 的剩余生存时间(TTL, time to live)。将一个或多个 member 元素加入到集合 key 当中,已经存在于集合的 member 元素将被忽略。查找所有符合给定模式 pattern 的 key 。voidscanUnlink(String pattern) 查找所有符合给定模式 pattern 的 key ,并将其删除返回集合 key 的基数(集合中元素的数量)。返回集合 key 中的所有成员。<T> T移除并返回集合中的一个随机元素。移除集合 key 中的一个或多个 member 元素,不存在的 member 元素会被忽略。以秒为单位,返回给定 key 的剩余生存时间(TTL, time to live)。返回 key 所储存的值的类型。
-
方法详细资料
-
keys
查找所有符合给定模式 pattern 的 key 。例子: KEYS * 匹配数据库中所有 key 。 KEYS h?llo 匹配 hello , hallo 和 hxllo 等。 KEYS a*cde 匹配 acde 和 aeeeeecde 等。 KEYS h[ae]llo 匹配 hello 和 hallo ,但不匹配 hillo 。
特殊符号用 \ 隔开
- 参数:
pattern- 表达式- 返回:
- 符合给定模式的 key 列表
-
scan
查找所有符合给定模式 pattern 的 key 。例子: KEYS * 匹配数据库中所有 key 。 KEYS h?llo 匹配 hello , hallo 和 hxllo 等。 KEYS a*cde 匹配 acde 和 aeeeeecde 等。 KEYS h[ae]llo 匹配 hello 和 hallo ,但不匹配 hillo 。
特殊符号用 \ 隔开
- 参数:
pattern- 表达式- 返回:
- 符合给定模式的 key 列表
-
scanUnlink
查找所有符合给定模式 pattern 的 key ,并将其删除例子: KEYS * 匹配数据库中所有 key 。 KEYS h?llo 匹配 hello , hallo 和 hxllo 等。 KEYS a*cde 匹配 acde 和 aeeeeecde 等。 KEYS h[ae]llo 匹配 hello 和 hallo ,但不匹配 hillo 。
特殊符号用 \ 隔开
- 参数:
pattern- 表达式
-
expire
为给定 key 设置生存时间,当 key 过期时(生存时间为 0 ),它会被自动删除。- 参数:
key- 一定不能为 null.- 返回:
- 是否成功
-
persist
移除给定 key 的生存时间,将这个 key 从『易失的』(带生存时间 key )转换成『持久的』(一个不带生存时间、永不过期的 key )。- 参数:
key- 一定不能为 null.- 返回:
- 是否成功
-
type
返回 key 所储存的值的类型。- 参数:
key- 一定不能为 null.- 返回:
- none (key不存在)、string (字符串)、list (列表)、set (集合)、zset (有序集)、hash (哈希表) 、stream (流)、caffeine(内存)
-
ttl
以秒为单位,返回给定 key 的剩余生存时间(TTL, time to live)。- 参数:
key- 一定不能为 null.- 返回:
- 当 key 不存在时,返回 -2 。 当 key 存在但没有设置剩余生存时间时,返回 -1 。 否则,以秒为单位,返回 key 的剩余生存时间。
-
pTtl
以毫秒为单位,返回给定 key 的剩余生存时间(TTL, time to live)。- 参数:
key- 一定不能为 null.- 返回:
- 当 key 不存在时,返回 -2 。当 key 存在但没有设置剩余生存时间时,返回 -1 。否则,以毫秒为单位,返回 key 的剩余生存时间
-
hSet
将哈希表 key 中的域 field 的值设为 value 。- 参数:
key- 一定不能为 null.value- 值cacheNullValues- 是否缓存空对象
-
hGet
返回哈希表 key 中给定域 field 的值。- 参数:
key- 一定不能为 null.cacheNullValues- 是否缓存空值- 返回:
- 默认情况下返回给定域的值, 如果给定域不存在于哈希表中, 又或者给定的哈希表并不存在, 那么命令返回 nil
-
hGet
返回哈希表 key 中给定域 field 的值。- 参数:
key- 一定不能为 null.loader- 加载器cacheNullValues- 是否缓存空值- 返回:
- 默认情况下返回给定域的值, 如果给定域不存在于哈希表中, 又或者给定的哈希表并不存在, 那么命令返回 nil
-
hExists
检查给定域 field 是否存在于哈希表 hash 当中- 参数:
cacheHashKey- 一定不能为 null.- 返回:
- 是否存在
-
hDel
删除哈希表 key 中的一个或多个指定域,不存在的域将被忽略。- 参数:
key- 一定不能为 null.fields- 一定不能为 null.- 返回:
- 删除的数量
-
hDel
删除哈希表 key 中的指定域,不存在的域将被忽略。- 参数:
cacheHashKey- 一定不能为 null.- 返回:
- 删除的数量
-
hLen
返回哈希表 key 中域的数量。- 参数:
key- 一定不能为 null.- 返回:
- 哈希表中域的数量。
-
hIncrBy
为哈希表 key 中的域 field 的值加上增量 increment 。- 参数:
key- 一定不能为 null.increment- 增量- 返回:
- 执行 HINCRBY 命令之后,哈希表 key 中域 field 的值
-
hIncrBy
为哈希表 key 中的域 field 的值加上增量 increment 。- 参数:
key- 一定不能为 null.increment- 增量- 返回:
- 执行 HINCRBY 命令之后,哈希表 key 中域 field 的值
-
hKeys
返回哈希表 key 中的所有域。- 参数:
key- 一定不能为 null.- 返回:
- 所有的 filed
-
hVals
返回哈希表 key 中所有域的值。- 参数:
key- 一定不能为 null.- 返回:
- 一个包含哈希表中所有值的表。
-
hGetAll
返回哈希表 key 中,所有的域和值。 在返回值里,紧跟每个域名(field name)之后是域的值(value),所以返回值的长度是哈希表大小的两倍。- 参数:
key- 一定不能为 null.- 返回:
- 以列表形式返回哈希表的域和域的值
-
hGetAll
<K,V> Map<K,V> hGetAll(@NonNull CacheHashKey key, Function<CacheHashKey, Map<K, V>> loader, boolean... cacheNullValues) 返回哈希表 key 中,所有的域和值。 在返回值里,紧跟每个域名(field name)之后是域的值(value),所以返回值的长度是哈希表大小的两倍。- 参数:
key- 一定不能为 null.loader- 加载回调cacheNullValues- 缓存空值- 返回:
- 以列表形式返回哈希表的域和域的值
-
sAdd
将一个或多个 member 元素加入到集合 key 当中,已经存在于集合的 member 元素将被忽略。 假如 key 不存在,则创建一个只包含 member 元素作成员的集合。 当 key 不是集合类型时,返回一个错误。- 参数:
key- 一定不能为 null.value- 值- 返回:
- 被添加到集合中的新元素的数量,不包括被忽略的元素。
-
sRem
移除集合 key 中的一个或多个 member 元素,不存在的 member 元素会被忽略。 当 key 不是集合类型,返回一个错误。- 参数:
key- 一定不能为 null.members- 元素- 返回:
- 被成功移除的元素的数量,不包括被忽略的元素
-
sMembers
返回集合 key 中的所有成员。 不存在的 key 被视为空集合。- 参数:
key- 一定不能为 null.- 返回:
- 集合中的所有成员。
-
sPop
移除并返回集合中的一个随机元素。 如果只想获取一个随机元素,但不想该元素从集合中被移除的话,可以使用 SRANDMEMBER 命令。- 参数:
key- 一定不能为 null.- 返回:
- 被移除的随机元素。 当 key 不存在或 key 是空集时,返回 nil 。
-
sCard
返回集合 key 的基数(集合中元素的数量)。- 参数:
key- 一定不能为 null.- 返回:
- 集合的基数。 当 key 不存在时,返回 0 。
-