一、安装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>

name="",是库的名字,instanceDir="",是目录,每个目录下包含两个文件夹conf和data,data下有两个文件夹index和tlog,index是存放生成的索引文件,tlog存放log,conf下是必要的配置文件schema.xml和solrconfig.xml,可以参考官方或者core里面的配置文件。

三、通过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(索引和搜索)的更多相关文章

  1. Hive_初步见解,安装部署与测试

    一.hive是什么东东 1. 个人理解 hive就是一个基于hdfs运行于MapReduce上的一个java项目, 这个项目封装了jdbc,根据hdfs编写了处理数据库的DDL/DML,自带的 二进制 ...

  2. Nginx安装部署与测试

    场景:项目需要部署在生产环境中,这些新的工具都需要在生产环境中去实践练习.有时间再部署一套ELK的日志分析系统,这样的系统才算具有一定的应用价值. 1 Nginx安装 用root用户安装,采用源代码编 ...

  3. (三)Hyperledger Fabric 1.1安装部署-chaincode测试

    环境搭建完毕,需要的工具和镜像安装完毕,就可以进行chaincode测试了,接下来参考官方教程运行first-network. 进入first-netwok: cd first-network fir ...

  4. 【Solr】Solr的安装部署

    目录 Solr安装部署 Solr Web界面分析 回到顶部 solr安装和部署 solr下载 http://lucene.apache.org/ 安装solr,就是去部署它的war包,war包所在的位 ...

  5. Solr 7 部署与使用踩坑全记录

    前言 Solr 是一种可供企业使用的.基于 Lucene 的搜索服务器,它支持层面搜索.命中醒目显示和多种输出格式.在这篇文章中,我将介绍 Solr 的部署和使用的基本操作,希望能让初次使用的朋友们少 ...

  6. solr 安装

    1:solr简介 solr是一个开源的搜索引擎,是对lucene做了封装,对外提供类似于webservice接口, 可以使用http请求的方式对solr进行操作. lucene.solr.elasti ...

  7. 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 ...

  8. 单机版solr6.3和分布式solr6.3的安装部署

    一.单机版的solr部署 我的是在windows下安装的,linux同理 1. 安装JDK8,并配置好环境变量,一般我们经常开发的电脑上应该都有JDk了,所以这一步可以忽略. 2. 解压solr6.3 ...

  9. zabbix 3.2.7 (源码包)安装部署

    Zabbix 3.2.7 + CentOS7 安装 环境准备: 操作系统 CentOS Linux release 7.2.1511 (Core) zabbix server 10.30.94.60 ...

随机推荐

  1. 2016-02-20WebForm登陆验证,判断用户是否登陆 PageBase类

    http://blog.csdn.net/fanbin168/article/details/49404233 很多时候,WebFrom页面,我们需要判断用户是否已经登陆了.假如有很多页面,难道我们要 ...

  2. Node的异步I/O

    node是单线程非阻塞异步I/O的模式. 阻塞I/O:完成整个数据获取的过程: 非阻塞I/O:不带数据,直接立即返回,要获取数据,还需通过文件描述符再次读取. node完成整个异步I/O的有事件循环. ...

  3. Python中的Unicode编码和UTF-8编码

    下午看廖雪峰的Python2.7教程,看到 字符串和编码 一节,有一点感受,结合崔庆才的Python博客 ,把这种感受记录下来: ASCII码:是用一个字节(8bit, 0-255)中的127个字母表 ...

  4. hzau 1205 Sequence Number(二分)

    G. Sequence Number In Linear algebra, we have learned the definition of inversion number: Assuming A ...

  5. DSD, DFF, DSF, DST概念解析

    DSD = Direct Stream Digital;  DST = D DSD是技术原理. DSDIFF简称DFF 是文件后缀名 DSF也是文件后缀名,他们是一个意思,只是一个是飞利浦的叫法 一个 ...

  6. FMDB的操作(转),这篇比我写的好

    直接看吧 http://blog.devtang.com/blog/2012/04/22/use-fmdb/

  7. OpenCV 2.4.9 +VS2013 开发环境配置

    OpenCV 的全称是:Open Source Computer Vision Library.OpenCV是一个基于(开源)发行的跨平台计算机视觉库,可以运行在Linux.Windows和Mac O ...

  8. 我的 Linux 配置

    系统版本 Ubuntu 18.04 一名老年弱智 OI 选手的 Linux 配置 文本编辑器: Sublime Text 中文补丁,关闭自动补全,自动联想,括号匹配,字号 15 编译器: g++ (然 ...

  9. luogu P4848 崂山白花蛇草水

    https://www.luogu.org/problemnew/show/P4848 我的数据结构大概已经废了. 外层权值线段树内层kdtree,外层线段树上二分答案. 码数据结构一时爽,码完deb ...

  10. C++对C语言的拓展(3)—— 默认参数和占位参数

    通常情况下,函数在调用时,形参从实参那里取得值.对于多次调用同一函数同一 实参时,C++给出了更简单的处理办法.给形参以默认值,这样就不用从实参那里取值了. 1.单个默认参数 若填写参数,使用你填写的 ...