Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我们可以在solr结果结构中有多个实体吗_Java_Javascript_Json_Solr - Fatal编程技术网

Java 我们可以在solr结果结构中有多个实体吗

Java 我们可以在solr结果结构中有多个实体吗,java,javascript,json,solr,Java,Javascript,Json,Solr,目前我的solr结果是 { "responseHeader":{ "status":0, "QTime":0, "params":{ "indent":"on", "start":"0", "q":"deepak\r\n", "wt":"json", "rows":"10", "version":"2.2"}}, "response":{"numFound":1,"start":0,"docs":[ { "summ

目前我的solr结果是

{
 "responseHeader":{
  "status":0,
  "QTime":0,
  "params":{
    "indent":"on",
    "start":"0",
    "q":"deepak\r\n",
    "wt":"json",
    "rows":"10",
    "version":"2.2"}},
 "response":{"numFound":1,"start":0,"docs":[
    {
     "summary":"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec vel porta odio. Maecenas ligula erat, ullamcorper ut iaculis non, vulputate vel velit. Cras facilisis, lectus a cursus accumsan, nunc libero aliquam magna, eu porta nulla risus quis nisi.",
     "id":"1",
     "text":"Indian Cellular Market Report and Forcasts 2010 - 2015",
     "price":1225.0,
     "pages":"1",
     "release_date":"2011-03-03T00:00:00Z",
     "product_type":"Report",
     "publisher":"deepak upadhyay",
     "regionText":[
      "Asia"],
     "catagoryId":["2","3"],
     "catagoryText":[
      "Banking & finance",
      "ATM"],
     "regionId":["1"]}]
 }}
我想我的结果集应该是这样的

{
 "responseHeader":{
  "status":0,
  "QTime":0,
  "params":{
    "indent":"on",
    "start":"0",
    "q":"deepak\r\n",
    "wt":"json",
    "rows":"10",
    "version":"2.2"}},
 "response":{"numFound":1,"start":0,"docs":[
    {
     "summary":"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec vel porta odio. Maecenas ligula erat, ullamcorper ut iaculis non, vulputate vel velit. Cras facilisis, lectus a cursus accumsan, nunc libero aliquam magna, eu porta nulla risus quis nisi.",
     "id":"1",
     "text":"Indian Cellular Market Report and Forcasts 2010 - 2015",
     "price":1225.0,
     "pages":"1",
     "release_date":"2011-03-03T00:00:00Z",
     "product_type":"Report",
     "publisher":"deepak upadhyay",
     "regionText":[
      "Asia"],
     "catagoryId":["2","3"],
     "catagoryText":[
      "Banking & finance",
      "ATM"],
     "regionId":["1"]}]
 }
    "categories": [
        {
            "text": "the newly launched..",
            "link": "#",
            "id": "12"
        },
        {
            "text": "the newly launched..",
            "link": "#",
            "id": "13"
        }
    ],
    "region": [
        {
            "text": "the newly launched..",
            "link": "#",
            "id": "14"
        },
        {
            "text": "the newly launched..",
            "link": "#",
            "id": "15"
        }
    ]
}
H下面列出的类别和区域是搜索结果中找到的所有类别的联合,与区域类似。

solr索引格式为“平面”。这意味着您无法轻松地对父/子或其他层次结构信息建模,而无需对数据进行大量的非规范化处理。 虽然没有以您描述的格式检索文档的内置方法,但有几种解决方案。哪种解决方案最适合您取决于您的具体需求

如果您只需要在GUI中显示子元素,那么只需将所有信息存储在一个字段中作为JSON或串联字符串()

如果您需要查询子元素,您可以使用如下前缀索引类别和区域信息:

 "catagoryId":["cat1_2","cat2_3"],
 "catagoryText":["cat1_Banking & finance", "cat2_ATM"],

然后,您的结果处理程序可以将信息转换回嵌套的实体模型。

好的格式是您的朋友。这与
XSLT
标记之间没有联系。重新标记。