首页 > 解决方案 > 有没有办法用通配符查询 ehcache 映射键?

问题描述

我正在使用带有 spring boot 缓存接口的 ehcache 实现。我正在加载一个表作为缓存。

示例让我们有一个users包含列的表

1. userId | 2.userName | 3.someUUID
-----------------------------------

这里我可能需要用 userId 或者 userName 或者 someUUID 来查询表如何用 spring cache 来做这个。

已尝试 userName+"_"+userId+"_"+someUUID将键和值作为 Map 中的对象。但想知道如何进行 Wild char 搜索;)

缓存创建

Cache cache = cacheManager.getCache("seccache");
cache.put(userName+"_"+userId+"_"+someUUID, Object)

抓取

ValueWrapper cache = cacheManager.getCache("seccache").get(key);

想知道如何获取 wild char 搜索。

标签: javaspring-bootehcache

解决方案


Ehcache 2.x 有一个选项可以做到这一点,请参阅相关文档。但是请注意,这不是缓存的设计目的。特别是 Ehcache 搜索的 OSS 实现实际上是一种蛮力搜索。

Ehcache 3.x 没有这个特性。


推荐阅读