在IgniteCache中是否支持任何类似准备好的语句API以避免每次查询解析?我看到为此提出了一个Jira问题,它说它在版本1.5.0.finalhttps://issues.apache.org/jira/browse/IGNITE-1856中解决了,但是我在Apache Ignite站点中找不到任何留档。我知道我们可以通过JDBC Connection连接来使用准备好的语句,但这不适合我的用例。
我的代码如下所示,这个查询将使用不同的参数一次又一次地调用,
IgniteCache<Integer,Subscriber> subscriberCache= rocCachemanager.getCache("subscriberCache");
SqlQuery<Integer, Subscriber> sql = new SqlQuery(Subscriber.class,
"from Subscriber where Subscriber.MSISDNNo=? and Subscriber.status='Active'");
sql.setArgs("SomeNumber");
QueryCursor<Entry<Integer,Subscriber>> cursor =ss.query(sql);
语句会自动缓存,无需执行任何操作。如果您的查询文本没有更改,只有参数更改,Ignite不会再次解析查询。