字段数量不同的条目

时间:2018-12-16 16:42:06

标签: hazelcast

我想缓存具有不同且不断变化的字段的数据。

我正在将IMap添加到其中的值是Map的条目,但是当我尝试使用谓词在Map中搜索值时,我在ReflectionHelper中遇到了错误。

(我正在使用Spring JDBC模板从其中一个列为BLOB的数据库表中加载数据,然后将Map放入缓存中)

是否可以使用一种模式/方法来缓存值映射,然后在该映射中搜索值?也许我应该使用MultiMap,其中值是具有名称/值对的元组?

Caused by: java.lang.IllegalArgumentException: There is no suitable accessor for '['CURRENCY']' on class 'class org.springframework.util.LinkedCaseInsensitiveMap'
at com.hazelcast.query.impl.getters.ReflectionHelper.createGetter(ReflectionHelper.java:192)
at com.hazelcast.query.impl.getters.ReflectionHelper.extractValue(ReflectionHelper.java:209)

1 个答案:

答案 0 :(得分:0)

请检查以下示例:https://github.com/hazelcast/hazelcast-code-samples/tree/master/distributed-map/custom-attributes/src/main/java/com/test/car/attribute

您需要做的是创建一个通用值提取器,可以从您的案例图中从给定对象提取值,并在查询时使用它。

在此示例中,Car类具有map属性,但同样也可以在没有包装类的情况下使用。