java在正文中传递Json字符串以使用Solrj查询solr
我正在使用httpclient从java代码查询solr服务器。现在我只想使用solrj库转换所有代码。我找不到任何合适的文档。 我现有的代码是这样的
HttpURLConnection conn = (HttpURLConnection) new URL(url.toString()).openConnection();
conn.setDoOutput(true);
conn.setRequestMethod("POST");
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
conn.setRequestProperty("Content-Type", "application/json");
conn.setRequestProperty("Accept", "*/*");
conn.setInstanceFollowRedirects(false);
OutputStream os = conn.getOutputStream();
os.write(inputJson.getBytes());
os.flush();
os.close();
BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
//read resp from rd
如何使用solrj实现同样的功能?下面是使用curlJSON Request API执行相同操作的文档
我想将inputJson
字符串作为请求正文发送。此Json字符串可能包含任何动态键值。正如我使用HTTPREST调用所展示的那样,这是可行的。但是如何使用solrj实现同样的功能呢
# 1 楼答案
下面是一个通过
SolrJ
的简单查询示例:如果您想获得json的原始输出,SolrJ将把结果包装成Java对象。然后我建议您使用
HttpClient
等工具通过SolrWeb的url检索结果,然后通过Jackson
将结果解析到json树JsonNode