Java 我们可以在solr结果结构中有多个实体吗
目前我的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
{
"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
标记之间没有联系。重新标记。