java如何操作solr实现查询功能

这篇文章主要介绍了java如何操作solr实现查询功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

嵊泗网站建设公司创新互联,嵊泗网站设计制作,有大型网站制作公司丰富经验。已为嵊泗上千提供企业网站建设服务。企业网站搭建\外贸网站建设要多少钱,请找那个售后服务好的嵊泗做网站的公司定做!

一、封装的查询方法

/**
* solr查询方法
* @param client solr客户端
* @param query solr查询对象
* @return list集合
* @throws SolrServerException 
* @throws IOException
*/
public static List> getSolrQuery(HttpSolrClient client, SolrQuery query) throws SolrServerException, IOException{
List> list = null;
//执行查询并返回结果
QueryResponse resp = client.query(query);
SolrDocumentList results = resp.getResults();
//获取查询到的数据总量
long numFound = results.getNumFound();
//判断总量是否大于0,
if(numFound <= 0) {
//如果小于0,表示未查询到任何数据,返回null
return null;
}else {
//如果大于0,表示有数据
//创建list存储每条数据
list = new ArrayList<>();
//遍历结果集
for (SolrDocument doc : results) {
//得到每条数据的map集合
Map map = doc.getFieldValueMap();
//添加到list
list.add(map);
}
//返回list集合
return list;
}
}

二、主函数

public static void main(String[] args) throws SolrServerException, IOException {
//创建solr客户端连接
HttpSolrClient hsc = new HttpSolrClient.Builder(SOLR_URL).build();
//创建查询对象
SolrQuery query = new SolrQuery();
//设置查询全部数据的条件
//query.setQuery("*:*");
query.setQuery("id:1");

List> list = getSolrQuery(hsc, query);
if(list == null) {
System.out.println("未查询到任何结果");
return;
}
for (Map map : list) {
Iterator it = map.keySet().iterator();
while(it.hasNext()) {
String key = it.next();
Object value = map.get(key);
System.out.println(key+"----"+value);
}
System.out.println("=======================================");
}

三、solr_url

//注这是一个人正确的url地址

java如何操作solr实现查询功能

如果url后边不加表会报如下错误:

java如何操作solr实现查询功能

感谢你能够认真阅读完这篇文章,希望小编分享的“java如何操作solr实现查询功能”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!


网站栏目:java如何操作solr实现查询功能
新闻来源:http://pwwzsj.com/article/iisceo.html