java solr 查询条件_05 java调用solr的api完成数据的查询
本文将演示通过java代码完成solr数据的新增、修改与删除。
1、版本约束
CentOS7 工作站
solr-4.10.3
putty
apache-tomcat-8.5.38
2、前提约束
3、新增普通查询类
import org.apache.solr.client.solrj.SolrQuery;
import org.apache.solr.client.solrj.SolrServer;
import org.apache.solr.client.solrj.impl.HttpSolrServer;
import org.apache.solr.client.solrj.response.QueryResponse;
import org.apache.solr.common.SolrDocument;
import org.apache.solr.common.SolrDocumentList;
public class TestQuerySolr {
public static void main(String[] args) throws Exception{
// 第一步:创建一个SolrServer对象
SolrServer solrServer = new HttpSolrServer("http://192.168.100.192:8080/solr/collection1");
// 第二步:创建一个SolrQuery对象。
SolrQuery query = new SolrQuery();
// 第三步:向SolrQuery中添加查询条件、过滤条件。。。
query.setQuery("title:ali");
// 第四步:执行查询。得到一个Response对象。
QueryResponse response = solrServer.query(query);
// 第五步:取查询结果。
SolrDocumentList solrDocumentList = response.getResults();
System.out.println("查询结果的总记录数:" + solrDocumentList.getNumFound());
// 第六步:遍历结果并打印。
for (SolrDocument solrDocument : solrDocumentList) {
System.out.println(solrDocument.get("id"));
System.out.println(solrDocument.get("title"));
}
}
}
执行,查看结果:
4、 新增高亮查询类
import org.apache.solr.client.solrj.SolrQuery;
import org.apache.solr.client.solrj.SolrServer;
import org.apache.solr.client.solrj.impl.HttpSolrServer;
import org.apache.solr.client.solrj.response.QueryResponse;
import org.apache.solr.common.util.NamedList;
public class TestQuerySolr {
public static void main(String[] args) throws Exception{
// 第一步:创建一个SolrServer对象
SolrServer solrServer = new HttpSolrServer("http://192.168.100.192:8080/solr/collection1");
// 第二步:创建一个SolrQuery对象。
SolrQuery query = new SolrQuery();
// 第三步:向SolrQuery中添加查询条件、过滤条件。。。
query.setQuery("title:is");
query.setHighlight(true); // 开启高亮组件或用query.setParam("hl", "true");
query.addHighlightField("title");// 高亮字段
query.setHighlightSimplePre("");//标记高亮关键字前缀
query.setHighlightSimplePost("");//标记高亮关键字后缀
// 第四步:执行查询。得到一个Response对象。
QueryResponse response = solrServer.query(query);
// 第五步:获取高亮结果
NamedList list = (NamedList) response.getResponse().get("highlighting");
for (int i = 0; i < list.size(); i++){
System.out.println("id=" + list.getName(i) + "文档中高亮显示的字段:" + list.getVal(i));
}
}
}
执行,查看结果:
id=1文档中高亮显示的字段:{title=[xiaoli is a haha kid]}
至此,我们完成了java查询solr。
java solr 查询条件_05 java调用solr的api完成数据的查询相关推荐
- java版微信朋友圈_java调用个人微信API接口发朋友圈,评论和删除朋友圈
java调用个人微信API接口发朋友圈,评论和删除朋友圈 /** * 发送朋友圈任务 * @author wechatno:tangjinjinwx * @param ctx * @param vo ...
- 制作一个Java即时翻译器——网页抓取调用百度翻译API
第一次在CSDN写博客,想着记录一下自己一些作业过程中的问题和心得,没想到要用Markdown语言写,说实话我还真没用过呢,还要边学边写.话不多说,进入正题. 1.引言 平时在上网浏览网站或者阅读一些 ...
- java 怎么页面授权访问_Java调用Linkedin接口API之:获取授权
配置领英应用 配置地址:https://www.linkedin.com/secure/developer?newapp= 强烈建议您使用 HTTPS 网址必须是绝对网址 (例如: "htt ...
- python账单查询软件_python3.6 通过调用 阿里云 API (非SDK方式) 查询 账单 例子
特别注意: 报错: b'{"Recommend":"https://error-center.aliyun.com/status/search?Keyword=Missi ...
- axios实战学习——调用城市天气api接口数据实现天气查询案例
文章目录
- python摄像头识别快递单号查询_python如何免费对接快递鸟api单号识别查询接口
(一)接入流程: 1.登录快递鸟官网注册页面注册快递鸟账号 2.登录快递鸟用户管理后台 注:登录快递鸟用户管理后台后获得用户ID和APIKey,此用于保证应用来源的可靠性,避免应用伪造,被不法使用. ...
- PHP 调用百度翻译api翻译数据
百度翻译API的PHP代码,需要申请百度翻译APPID和密钥,这是申请地址http://api.fanyi.baidu.com/api/trans/product/index,代码如下: public ...
- Java 实现在线翻译功能 调用微软Bing API
下面是利用java程序实现翻译功能,调用微软Bing API 注意:代码中的keyId 需要自己申请... (1)首先去 http://code.google.com/p/microsoft-tran ...
- ibatis动态查询条件
ibatis的调试相对困难,出错的时候主要依据是log4生成的log文件和出错提示,这方面要能比较熟练的看懂. 下面这个配置基本上包含了最复杂的功能:分页\搜索\排序\缓存\传值Hash表\返回has ...
最新文章
- 信息系统项目管理师-信息系统成本管理核心知识点思维脑图
- maven学习笔记之IDEA+Maven+Jetty运行一个简单的web项目
- Java EE之旅02 CSS基础
- python uwsgi_Python Web 程序使用 uWSGI 部署
- Java程序员---技能树
- 阿里巴巴的AI革命 | 4天云栖大会干货总结
- [python基础]关于中文编码和解码那点事儿
- 计算机论文与护理,快速护理论文范文
- box-sizing的类型
- 程序开发中常用的密码学家的算法推荐清单
- Spring Boot 打包成的可执行 jar ,为什么不能被其他项目依赖?
- 区块链发展迎来新机遇
- 有监督学习,无监督学习,半监督学习和强化学习
- 利用Multipart上传文件报错:The field fileUpload exceeds its maximum permitted size of 1048576 bytes
- 神奇的三门问题,到底换不换门
- java rpm卸载_rpm安装和卸载软件
- 计算机科学与技术职业生涯规划,计算机科学与技术职业生涯规划ppt
- NAXX Demo2_WYQ_02
- 网络危机-负面信息处理
- 读书笔记 -《疯狂Java讲义》(第5版)
热门文章
- Linux下查找文件方法
- 关于MySql链接url参数的设置 专题
- js架构设计模式——由项目浅谈JS中MVVM模式
- 对于随机变量的标准差standard deviation、样本标准差sample standard deviation、标准误差standard error的解释...
- TOAD FOR MYSQL 进行数据插入时乱码的解决办法---MariaDB 5.5
- 用ssh建立机器之间的信任机制
- Android 应用程序 降低耗电量的一些思路
- 海生《我不是你的玩偶》关注颇高
- linux命令作为子进程标记,Linux基础命令---显示进程ps
- linux改变该进程优先级,linux – 是nice()用于更改线程优先级或进程优先级吗?