2016-10-10 70 views
1

有没有一种方法来实现JSON支持Hazelcast?总之,要求是能够存储具有任意属性的对象并能够基于它们查询地图。Json喜欢支持榛色

  public class DynamicBean implements Portable { 

     private Map<String,String> attributes; 
} 

到目前为止,我已经尝试Portablecustom attributes,不幸的是他们两人来到,你需要知道前手的属性点。

我有一些其他的方式也记住:

  1. 使用便携和带有某种无效值的属性未进行设置
  2. 利用IMap.executeOnEntries()并返回匹配项初始化对象在传入命令后在EntryProcessor对象中搜索。但是在这种方法中,我不确定它是如何可扩展的,因为EntryProcessor需要对每个对象进行反序列化。

回答

1

我目前正在研究CBOR支持,它类似于二进制JSON,它将提供大部分您期望的功能(可查询,可索引...)。

对于您可以尝试使用便携式哪种似的东西HashMap的时刻。您可以在这里找到文档:http://docs.hazelcast.org/docs/3.7/manual/html-single/index.html#implementing-portable-serialization

+0

预计哪个版本的hazelcast?甚至是暂时的。任何方式来获得甚至SNAPSHOT或每晚构建? – Manish

+0

要获得CBOR?它是一个外部插件,根本不包含在Hazelcast源代码中。你需要这个解析器https://github.com/noctarius/borabora和一些尚未上传到任何地方的绑定代码,因为它可能还没有准备好。我可以上传它,但如果你感兴趣:) – noctarius

+0

当然。当你上传时让我知道:-) – Manish