我是SOLR的新手,我正在尝试使用SOLR索引oracle数据库查询结果。我也编写了config.xml并在schema.xml中添加了索引。
我的config.xml文件中有多个查询作为子实体(带有child = true)。许多查询都返回多行。例如,我有一个实体
<entity name="example_subentity" child="true" query="SELECT A,B from table_temp">
<field column="A" name="a" />
<field column="B" name="b" />
</entity>
将输出返回为
"response":{"numFound":1,"start":0,"docs":[
{
"unique_key":"4493234234",
"_version_":1560479076226957312,
"_childDocuments_":[
{
"a" : "value_a_1",
"b" : "value_b_1",
},
{
"a" : "value_a_2",
"b" : "value_b_2",
}]
}]}
我想在这里实现的是,像
"_childDocuments_":[
{"table_temp_response" :[
{
"a" : "value_a_1",
"b" : "value_b_1",
},
{
"a" : "value_a_2",
"b" : "value_b_2",
}]
}]
任何人都可以指导我,如何使用DIH获得此类输出?
只是更新我正在寻找服务器端解决方案,我可以在客户端使用java或SOLRJ来做到这一点。但我有多个客户端会使用SOLR查询响应。
答案 0 :(得分:0)
如果你使用Solrj
JSONArray jArray = new JSONArray();
for (int i = 0; i < docList.size(); i++) {
JSONObject json = new JSONObject(docList.get(i));
jArray.put(json);
}
&GT;
for (int i = 0; i < jArray.length(); i++) {
JSONObject obj = objs.getJSONObject(i);
obj.getString("a"));