Solr 入门教程--solrJ6.3.0
来源:互联网 发布:地球污染数据 编辑:程序博客网 时间:2024/06/05 19:50
今天小编给大家分享一下写的程序,如何通过SolrJ来对solr进行增删改查。首先需要建立工程,导入Jar包。我采用的版本是SolrJ 6.3.0。
JAR包截图:链接地址:solrJ6.3.0。
下面是我写的程序:这个是我的包的结构,以及import入程序的类名字。
package cn.ihep.dao;import cn.ihep.dto.Content;import org.apache.solr.client.solrj.SolrClient;import org.apache.solr.client.solrj.SolrQuery;import org.apache.solr.client.solrj.SolrServerException;import org.apache.solr.client.solrj.impl.HttpSolrClient;import org.apache.solr.client.solrj.response.QueryResponse;import org.apache.solr.client.solrj.response.UpdateResponse;import org.apache.solr.common.SolrDocument;import org.apache.solr.common.SolrDocumentList;import org.apache.solr.common.SolrInputDocument;import org.apache.solr.common.params.SolrParams;import java.io.IOException;import java.util.List;import java.util.Map;(一)增加一条索引,方式一,采用Document
public void addindex()throws IOException,SolrServerException { String urlString = "http://192.168.14.167:8080/solr/core"; SolrClient solr = new HttpSolrClient.Builder(urlString).build(); SolrInputDocument document = new SolrInputDocument(); document.addField("id", "552199"); document.addField("url","it.ac.cn"); document.addField("title", "Gouda cheese wheel"); document.addField("content", "49.99"); UpdateResponse response = solr.add(document); solr.commit();}
(二)增加一条索引,方式二,采用Javabean
public void addindex()throws IOException,SolrServerException { String urlString = "http://192.168.14.167:8080/solr/core"; SolrClient solr = new HttpSolrClient.Builder(urlString).build(); Content content = new Content(); content.setId("11010"); content.setTitle("Gouda cheese wheel"); content.setContent("Gouda cheese wheel"); content.setUrl("Gouda cheese wheel"); solr.addBean(content); solr.commit(); }
javaBean格式:set以及get方法这里就不在说了。
import org.apache.solr.client.solrj.beans.Field;public class Content { @Field(value = "id") private String id; @Field(value = "title") private String title; @Field(value = "content") private String content; @Field(value = "url") private String url; ...}
(三)通过某个字段,删除一条索引,我编程选择的是通过ID来删除索引。
public void delIndex()throws IOException,SolrServerException{ String urlString = "http://192.168.14.167:8080/solr/core"; SolrClient solr = new HttpSolrClient.Builder(urlString).build(); solr.deleteById("1100zb"); solr.commit(); }
(四)查找索引以及数据,设置分页,高亮显示。
//进行查找功能 public void find() throws IOException, SolrServerException { String urlString = "http://192.168.14.167:8080/solr/core"; SolrClient solr = new HttpSolrClient.Builder(urlString).build(); //以后参数都是通过这个对象去构造 SolrQuery query = new SolrQuery(); query.setQuery("title:Gouda"); //分页设置 query.setStart(0); query.setRows(10); //高亮设置 //开启高亮 query.setHighlight(true); //高亮显示的格式 query.setHighlightSimplePre("<font color='red'>"); query.setHighlightSimplePost("</font>"); //我需要将那几个字段进行高亮 query.setParam("hl.fl","url,title"); QueryResponse queryResponse =null; queryResponse = solr.query(query); SolrDocumentList list = null; list = queryResponse.getResults(); //返回高亮之后的结果 Map<String,Map<String,List<String>>> mapList =queryResponse.getHighlighting(); for(SolrDocument solrDocument:list){ Object id = solrDocument.get("id"); Map<String,List<String>> fieldMap = mapList.get(id); List<String> listUrl = fieldMap.get("url"); List<String> listTitle = fieldMap.get("title"); System.out.println("listUrl"+listUrl); System.out.println("listTitle"+listTitle); } for(SolrDocument solrDocument:list){ Object content = solrDocument.get("content"); Object url = solrDocument.get("url"); Object title = solrDocument.get("title"); System.out.println("content"+content); System.out.println("url"+url); System.out.println("title"+title); }
阅读全文
1 0
- Solr 入门教程--solrJ6.3.0
- solr入门教程
- solr入门教程
- solr入门教程
- solr入门教程
- solr入门教程
- solr入门教程
- Apache Solr入门教程
- solrJ6.5.1 使用
- Solr 6.3.0 入门教程(开篇)Solr特性
- Apache Solr入门教程(初学者之旅)
- Apache Solr入门教程(初学者之旅)
- Solr 6.3.0 入门教程(一) 安装
- Solr 6.3 入门教程(二) SolrJ
- Apache Solr入门教程(初学者之旅)
- Apache Solr入门教程(初学者之旅)
- Apache Solr入门教程(初学者之旅)
- Solr
- 牛客 题库 4 内存管理GetMemory
- android 中四种补间动画(透明,平移,缩放,旋转)
- C++文件操作——获取可执行文件或DLL版本信息
- Android应用如何支持不同的语言和文化
- 控制另一个程序里的数据窗口
- Solr 入门教程--solrJ6.3.0
- 调用相同相机,相册(2部分分开,简单的)
- window socketAPI
- 广播
- 分苹果(2016京东招聘笔试题)
- 关于IOS获取本地通讯录信息(包含iOS9.0前后)
- Nordic BLE 4.0 How-to
- 栈的压入、弹出序列 -- 漫漫算法路 刷题篇
- Centos 7 快速安装DOCKER并部署SHIPYARD中文版