类 NoneSohelpCacheProvider

java.lang.Object
net.sohelp.boot.admin.core.cache.provider.NoneSohelpCacheProvider
所有已实现的接口:
SohelpCacheProvider

public class NoneSohelpCacheProvider extends Object implements SohelpCacheProvider
无缓存实现(直接查库模式)

所有写操作为空操作,get(java.lang.String) 始终返回 nullisEnabled() 返回 false

调用方通过 provider.isEnabled() 判断是否需要绕过缓存直接查询数据库。

适用于开发调试阶段或不需要缓存的场景,确保每次请求都直接查询最新数据。

从以下版本开始:
2026-03-23
作者:
AaronFung
  • 构造器详细资料

    • NoneSohelpCacheProvider

      public NoneSohelpCacheProvider()
  • 方法详细资料

    • get

      public Object get(String key)
      获取缓存值

      根据给定的缓存键查询对应的缓存值。若缓存未命中(key 不存在或已过期), 则返回 null

      无缓存模式下始终返回 null,表示缓存未命中,调用方应直接查询数据库。

      指定者:
      get 在接口中 SohelpCacheProvider
      参数:
      key - 缓存键(本实现中不使用)
      返回:
      始终返回 null
    • put

      public void put(String key, Object value)
      写入缓存(使用构造时设定的默认 TTL)

      将键值对存入缓存,过期时间采用实例创建时指定的默认 TTL。 若 key 已存在,则覆盖旧值并重置过期时间。

      无缓存模式下为空操作,不做任何存储。

      指定者:
      put 在接口中 SohelpCacheProvider
      参数:
      key - 缓存键(本实现中不使用)
      value - 缓存值(本实现中不使用)
    • put

      public void put(String key, Object value, long ttlSeconds)
      写入缓存并指定 TTL

      将键值对存入缓存,并使用调用方显式指定的 TTL 作为过期时间。 若 key 已存在,则覆盖旧值并重置过期时间。

      无缓存模式下为空操作,不做任何存储。

      指定者:
      put 在接口中 SohelpCacheProvider
      参数:
      key - 缓存键(本实现中不使用)
      value - 缓存值(本实现中不使用)
      ttlSeconds - TTL 秒数(本实现中不使用)
    • remove

      public void remove(String key)
      删除指定缓存项

      从缓存中移除给定 key 对应的键值对。若 key 不存在,则不做任何操作。

      无缓存模式下为空操作,无需移除任何数据。

      指定者:
      remove 在接口中 SohelpCacheProvider
      参数:
      key - 缓存键(本实现中不使用)
    • clear

      public void clear()
      清空该命名空间下的所有缓存

      移除当前缓存实例管理的全部键值对。对于 Redis 实现, 仅清除当前命名空间前缀下的 key,不影响其他命名空间。

      无缓存模式下为空操作,无需清空任何数据。

      指定者:
      clear 在接口中 SohelpCacheProvider
    • contains

      public boolean contains(String key)
      判断指定 key 是否存在且未过期

      检查给定的缓存键是否仍然有效(存在且未超过 TTL)。

      无缓存模式下始终返回 false,表示任何 key 都不存在于缓存中。

      指定者:
      contains 在接口中 SohelpCacheProvider
      参数:
      key - 缓存键(本实现中不使用)
      返回:
      始终返回 false
    • isEnabled

      public boolean isEnabled()
      是否启用缓存

      NONE 模式返回 false,调用方应检查此标志并直接查询数据库, 避免无效缓存逻辑。MEMORY 和 REDIS 模式均返回 true

      无缓存模式下缓存未启用,调用方应检查此返回值并直接查询数据库。

      指定者:
      isEnabled 在接口中 SohelpCacheProvider
      返回:
      始终返回 false,表示缓存未启用
    • size

      public int size()
      获取当前缓存中的 key 数量

      返回当前命名空间下有效(未过期)的缓存条目数。

      无缓存模式下不存储任何数据,因此大小始终为 0。

      指定者:
      size 在接口中 SohelpCacheProvider
      返回:
      始终返回 0
    • keys

      public Set<String> keys()
      获取当前命名空间下所有缓存 key(不含前缀)

      返回当前缓存实例管理的所有有效 key 集合。对于 Redis 实现, 返回的 key 已去除命名空间前缀。

      无缓存模式下不存储任何数据,返回不可变的空集合。

      指定者:
      keys 在接口中 SohelpCacheProvider
      返回:
      始终返回空的不可变集合,不会返回 null
    • getType

      public String getType()
      获取缓存提供者类型名称

      用于日志输出、监控等场景,标识当前使用的缓存类型。

      指定者:
      getType 在接口中 SohelpCacheProvider
      返回:
      固定返回 "NONE",标识当前为无缓存实现