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地址

5885164ac8741226ea520080df096ae2.png

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

369149d3bd2b912d63180b787eb2f869.png

原文:http://www.cnblogs.com/li-zx/p/7845904.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值