Java 如何在Hazelcast';什么是IMap?

Java 如何在Hazelcast';什么是IMap?,java,hazelcast,Java,Hazelcast,我正在尝试通过IMap键获取值 我的测试代码: 1)模型类 public class ModelTest implements Serializable{ /** * */ private static final long serialVersionUID = 1L; private String id1; private String id2; private String id3; public ModelTest()

我正在尝试通过IMap键获取值

我的测试代码:

1)模型类

public class ModelTest implements Serializable{
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    private String id1;
    private String id2;
    private String id3;

    public ModelTest() {
        super();
    }


2)主要方法

        HazelcastInstance hazelcastInstance = Hazelcast.newHazelcastInstance();
        IMap<ModelTest, String> map = hazelcastInstance.getMap("map-name");
        ModelTest t1 = new ModelTest();
        t1.setId1("a1");
        t1.setId2("a2");
        t1.setId3("a3");

        ModelTest t2 = new ModelTest();
        t2.setId1("b1");
        t2.setId2("b2");
        t2.setId3("b3");
       
       //Loading into cache
        map.put(t1, "rakesh");
        map.put(t2, "ramkumar");

是否可以一次选择多个键

SqlPredicate predicate = new SqlPredicate("__key.id1='a1' and __key.id2='b2'");
类似于上面的代码

我不想使用
谓词
,因为它不是动态的

Predicate predicate = e.is( "active" ).and( e.get( "age" ).lessThan( 30 ) );

您可以通过一个查询选择多个键,只需使用
关键字

在您的情况下,以下谓词应该返回这两个条目

SqlPredicate predicate = new SqlPredicate("__key.id1='a1' or __key.id2='b2'");
SqlPredicate predicate = new SqlPredicate("__key.id1='a1' or __key.id2='b2'");