我在Hazelcast中使用地图数据结构存储数据。这将存储如下:
key1 valueforKey1
key2 valueforkey2
key11 valueforKey11
key22 valueforKey22
key123 valueforKey123
key33 valueforKey33
现在我想根据来自hazelcast的密钥获取数据,例如我希望所有记录的密钥都以key1*
开头。
我怎样才能在淡褐色中做到这一点?
注意:在值我存储一些字符串。
答案 0 :(得分:3)
只需使用Hazelcast Criteria API http://docs.hazelcast.org/docs/3.4/manual/html-single/hazelcast-documentation.html#criteria-api
即可使用 ,如 或 正则表达式 指令。
编辑:
这是一个完整的例子:
public class Test {
public static void main(String[] args) {
HazelcastInstance hazelcastInstance = Hazelcast.newHazelcastInstance();
IMap<String, String> map = hazelcastInstance.getMap("map-name");
map.put("key1", "value-1");
map.put("key21", "value-21");
map.put("key11", "value-key11");
SqlPredicate predicate = new SqlPredicate("__key REGEX '^key1.*$'");
System.out.println(map.values(predicate));
}
}