diff --git a/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/CacheUtils.java b/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/CacheUtils.java index 28b879d3509a79ba21b705c99767a8bd06e745e2..a704823b952d8b8024dfe512b46aaa616f6b85b4 100644 --- a/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/CacheUtils.java +++ b/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/CacheUtils.java @@ -161,4 +161,14 @@ public class CacheUtils { getCacheProvider().del(cacheKeys); } + /** + * keys + * + * @param pattern + * @return + */ + public static Set keys(String pattern) { + return getCacheProvider().keys(pattern); + } + } \ No newline at end of file diff --git a/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/CacheProvider.java b/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/CacheProvider.java index 17b41352dcf1763d8a27940641ee20d45fbb94de..1c9d264a01425d9dccc668d711672b2a7dc664dc 100644 --- a/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/CacheProvider.java +++ b/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/CacheProvider.java @@ -29,6 +29,13 @@ public interface CacheProvider { */ void del(List cacheKeys); + /** + * 模糊搜索KEY + * @param pattern + * @return + */ + Set keys(String pattern); + /** * 缓存获取 */ diff --git a/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/CacheProviderDelegate.java b/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/CacheProviderDelegate.java index ade10516881cd46fab01b0f0b0aaf08eacee8dd3..64c25adc2355d78a12f4b4b05634ec15d07444b8 100644 --- a/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/CacheProviderDelegate.java +++ b/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/CacheProviderDelegate.java @@ -62,6 +62,11 @@ public class CacheProviderDelegate implements CacheProvider { getCacheProvider().del(keysWithPrefix); } + @Override + public Set keys(String pattern) { + return getCacheProvider().keys(withKeyPrefix(pattern)); + } + @Override public T get(String cacheKey, Class valueType) { return getCacheProvider().get(withKeyPrefix(cacheKey), valueType); diff --git a/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/redis/RedisCacheProvider.java b/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/redis/RedisCacheProvider.java index b24980539b5d705c67085b005f932fa87e71aee3..e77c4ed9dbafd91656748c6994acd872a143fa8a 100644 --- a/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/redis/RedisCacheProvider.java +++ b/starters/cache-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/cache/provider/redis/RedisCacheProvider.java @@ -70,6 +70,17 @@ public class RedisCacheProvider implements CacheProvider { redisTemplate.delete(cacheKeys); } + /** + * 模糊搜索KEY + * + * @param pattern + * @return + */ + @Override + public Set keys(String pattern) { + return redisTemplate.keys(pattern); + } + /** * 缓存获取 */