solr安装部署、solr测试创建core、用solrj 访问solr(索引和搜索)
一、安装solr4.8:
1、把apache-solr-4.8.1\example\webapps下的solr.war文件拷贝到Tomcat下的Tomcat7.0\webapps目录下,tomcat启动时,solr.war会自动解压生成solr目录。
2、检查解压缩后的solr\WEB-INF\lib下的jar包是否全,最好去apache-solr-4.8.1下的某些jar复制过来,不然启动tomcat有无厘头错误。
3、配置solrhome(索引数据、配置信息存储的地方)路径信息:将Tomcat7.0\webapps\solr\WEB-INF\web.xml中的如下代码取消注释,修改蓝色字体的值(我的是E:/SolrHome):
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>E:/SolrHome</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
关于solr/home的设置,其实有三种方法:
(1)、在solr的web.xml中设置
(2)、在tomcat启动时附带参数
(3)、修改D:/Tomcat7.0/bin目录下的catalina.bat文件,里面加入tomcat的启动参数:set
JAVA_OPTS=-Dsolr.solr.home=E:/SolrHome
4、将apache-solr-4.8.1\example\solr下的所有内容(有collection1)拷贝到E:/SolrHome路径下,如下图:
或拷贝apache-solr-4.8.1\example\multicore下所有内容包含(core0和core1)到E:/SolrHome路径。
【仅仅是为了在已配置的collection1或core0或core1上测试用,进一步学习还需要自己修改schema.xml和solrconfig.xml文件来配置】

--------solr 部署结束,启动tomcat,访问浏览器地址http://localhost:8080/solr/----测试配置是否成功!!------
( 当然core可以模仿目录结构手动创建),图中solrtest是我手动创建的core。
看看手动创建core步骤:
步骤1、第一步是建立solrtest文件夹,在solrtest下创建1个conf文件夹(conf文件夹下要有solrconfig.xml和schema.xml两个文件)和1个core.properties文),其中core.properties的内容如下:
name=solrtest
config=solrconfig.xml
schema=schema.xml
dataDir=data
步骤2、每次添加一个core,都需要在solr.xml里面注册:
<solr persistent="false">
<cores adminPath="/admin/cores" host="${host:}" hostPort="${jetty.port:}">
<core name="core0" instanceDir="core0" />
<core name="core1" instanceDir="core1" />
<core name="solrtest" instanceDir="solrtest"/>
</cores>
</solr>
三、通过solrj(java程序)对solr服务器进行访问:
1、添加索引数据:
public static void addIndex()throws IOException, SolrServerException{
HttpSolrServer server = new HttpSolrServer("http://localhost:8080/solr/collection1");
for (int i = 0; i < 1000; ++i) {
SolrInputDocument doc = new SolrInputDocument();
doc.addField("name", "student");
doc.addField("id", 2014+ i);
doc.addField("age", i/100+5);
doc.addField("price", 1000+i*2);
server.add(doc);
if (i % 100 == 0)
server.commit(); // periodically flush
}
server.commit();
}
2、进行查询:
public static void main(String[] args) throws MalformedURLException, SolrServerException {
HttpSolrServer solr = new HttpSolrServer("http://localhost:8080/solr/solrtest");
ModifiableSolrParams params = new ModifiableSolrParams();
params.set("q", "name:student"); //name 是field的key, student是field的value
params.set("start", "0");
QueryResponse response = solr.query(params);
SolrDocumentList results = response.getResults();
System.out.println(results.size());
for (int i = 0; i < results.size(); ++i) {
System.out.println(results.get(i));
}
}
solr安装部署、solr测试创建core、用solrj 访问solr(索引和搜索)的更多相关文章
- Hive_初步见解,安装部署与测试
一.hive是什么东东 1. 个人理解 hive就是一个基于hdfs运行于MapReduce上的一个java项目, 这个项目封装了jdbc,根据hdfs编写了处理数据库的DDL/DML,自带的 二进制 ...
- Nginx安装部署与测试
场景:项目需要部署在生产环境中,这些新的工具都需要在生产环境中去实践练习.有时间再部署一套ELK的日志分析系统,这样的系统才算具有一定的应用价值. 1 Nginx安装 用root用户安装,采用源代码编 ...
- (三)Hyperledger Fabric 1.1安装部署-chaincode测试
环境搭建完毕,需要的工具和镜像安装完毕,就可以进行chaincode测试了,接下来参考官方教程运行first-network. 进入first-netwok: cd first-network fir ...
- 【Solr】Solr的安装部署
目录 Solr安装部署 Solr Web界面分析 回到顶部 solr安装和部署 solr下载 http://lucene.apache.org/ 安装solr,就是去部署它的war包,war包所在的位 ...
- Solr 7 部署与使用踩坑全记录
前言 Solr 是一种可供企业使用的.基于 Lucene 的搜索服务器,它支持层面搜索.命中醒目显示和多种输出格式.在这篇文章中,我将介绍 Solr 的部署和使用的基本操作,希望能让初次使用的朋友们少 ...
- solr 安装
1:solr简介 solr是一个开源的搜索引擎,是对lucene做了封装,对外提供类似于webservice接口, 可以使用http请求的方式对solr进行操作. lucene.solr.elasti ...
- Solr产品化部署
1.下载solr-6.4.1.tgz到任意目录 2.执行tar xzf solr-6.4.1.tgz solr-6.4.1/bin/install_solr_service.sh --strip-co ...
- 单机版solr6.3和分布式solr6.3的安装部署
一.单机版的solr部署 我的是在windows下安装的,linux同理 1. 安装JDK8,并配置好环境变量,一般我们经常开发的电脑上应该都有JDk了,所以这一步可以忽略. 2. 解压solr6.3 ...
- zabbix 3.2.7 (源码包)安装部署
Zabbix 3.2.7 + CentOS7 安装 环境准备: 操作系统 CentOS Linux release 7.2.1511 (Core) zabbix server 10.30.94.60 ...
随机推荐
- srvany把程序作为Windows服务运行
srvany.exe是什么? srvany.exe是Microsoft Windows Resource Kits工具集的一个实用的小工具,用于将任何EXE程序作为Windows服务运行.也就是说sr ...
- 2018-2019-2 20165210《网络对抗技术》Exp6 信息搜集与漏洞扫描
2018-2019-2 20165210<网络对抗技术>Exp6 信息搜集与漏洞扫描 一.实验目标: 掌握信息搜集的最基础技能与常用工具的使用方法. 二.实验内容: 各种搜索技巧的应用 G ...
- 线程存储(Thread Specific Data)
线程中特有的线程存储, Thread Specific Data .线程存储有什么用了?他是什么意思了? 大家都知道,在多线程程序中,所有线程共享程序中的变量.现在有一全局变量,所有线程都可以使用它, ...
- Ubuntu16.04上安装搜狗输入法
一.下载搜狗输入法的deb包: http://pinyin.sogou.com/linux/ 二.打开终端输入命令: $ sudo dpkg -i sogoupinyin_2.0.0.0078_i38 ...
- ACM学习历程—Hihocoder 1291 Building in Sandbox(dfs && 离线 && 并查集)
http://hihocoder.com/problemset/problem/1291 前几天比较忙,这次来补一下微软笔试的最后一题,这题是这次微软笔试的第四题,过的人比较少,我当时在调试B题,没时 ...
- [ Laravel 5.5 文档 ] 数据库操作 —— 在 Laravel 中轻松实现分页功能
 简介 在其他框架中,分页是件非常痛苦的事,Laravel 让这件事变得简单易于上手.Laravel 的分页器与查询构建器和 Eloquent ORM 集成在一起,并开箱提供方便的.易于使用的.基于 ...
- tp中自定义跳转页面
1.在admin->view下建立public文件夹 2.在public文件夹下建立error.html success.html 3.在项目下公共common ->config.php写 ...
- JS计算字符串的长度
最近项目上经常要用到计算字符串的长度的问题,有时需要按照byte进行计算长度,所以我就想在页面上用js实现,于是就到网上查了相关的资料,发现确实有很多的版本,这里给出两个比较好用的. //方法一:逐个 ...
- BZOJ4170:极光
浅谈离线分治算法:https://www.cnblogs.com/AKMer/p/10415556.html 题目传送门:https://lydsy.com/JudgeOnline/problem.p ...
- touch: cannot touch '/usr/local/tomcat/logs/catalina.out': Permission denied解决方法
一.报以下错误: ./startup.sh Using CATALINA_BASE: /usr/local/tomcat702 Using CATALINA_HOME: /usr/local/tomc ...