反序列化Apache Solr复杂对象列表

时间:2018-03-21 18:06:02

标签: serialization solr deserialization

我是一个使用Apache Solr的新手,我正在索引一个包含复杂对象列表的文档,如下所示:

{
    PropA: AnyValue,
    PropB: [{p1:'v1', p2:'v2'}, {p1:'v3', p2:'v4'}],
    PropC: [{p1:'v1', p2:'v2'}, {p1:'v3', p2:'v4'}]
}

当我将它发送给solr时,它将获得相同的数据,但格式不同:

{
    PropA: AnyValue,
    PropB.p1: ['v1','v3']
    PropB.p2: ['v2','v4']
    PropC.p1: ['v1','v3']
    PropC.p2: ['v2','v4']
}

这种格式导致我反序列化的问题,是否有可能或者我该如何让Solr以原始格式返回对象?

我是否必须在架构级别指定一些特殊内容来支持Subdocuments?我有点迷失了。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

要从SOLR获取格式良好的文档,您可以使用carrot框架。 它易于实现,您可以使用XSLT生成XML或JSON格式作为您的自定义要求。