solr的安装配置,以及使用程序插入与查询

之前看了一下solr,在本地配置了一下,记录下来。
首先去官网下载solr,直接下载zip包即可。目前最新的是 solr-6.2.0 。下载完成后解压。

1 、启动solr

官方wiki写的很详细。在bin目录下,直接使用 solr start 即可启动,不加参数默认使用8983端口。
若想指定端口,则可通过 -p 参数指定端口。

solr start

$ bin/solr start -p 8984

这里写图片描述

启动成功。

2、访问solr控制台

地址:http://localhost:8983/solr
进入solr的控制台。
solr的工作核心名词为core,可以理解成数据库的表。 每个core都有自己的schema,可对应理解为数据库的字段。
控制台如下图所示。
当前是没有core文件的,需要我们自己配置。
这里写图片描述

3、配置core

配置我们自己的core。
在控制台的左边菜单中,选择Core Admin,进入core新建页面。
在点击Add Core 保存之前, 先进入solr的安装目录的 server - solr 下 新建一个和core同名的文件夹,如:
进入E:\DevelopEnvironment\solr\solr-6.2.0\server\solr 新建 democore 。
文件夹建好后,进入solr目录的 server\solr\configsets\basic_configs 下,拷贝conf文件夹到新建的文件夹下
如:进入E:\DevelopEnvironment\solr\solr-6.2.0\server\solr\configsets\basic_configs 拷贝conf文件夹到刚刚新建的democore
这里写图片描述

完成这一步准备工作后,回到控制台的Core Admin 录入name和dir 点击 Add Core 保存即可
这里写图片描述

保存完成后,可看到该core:
这里写图片描述
对应的文件夹内容也改变为:
这里写图片描述

4、新建schema

core文件创建完成后,创建其对应的schema。
进入该core的Schema 菜单 ,点击Add Field ,在弹出的页面中,录入name和type,name代表字段的名称,type为类型 ,类型选择 text_general。 stored 意思为,将该字段的值进行存储,用来以后索引的时候直接取出。indexed 表示 将该字段进行索引。
这里写图片描述
录入完成后,点击Add Field保存即可。

至此,core和schema都构建完成。接下来要向solr的这个core插入数据。

5、使用程序插入数据

新建java项目,将solr的对应jar包拷贝到项目中。
使用到的jar包在 dist 文件夹下,主要包括 solrj这个jar包和solr-lib下的jar包,为了方便,直接全部拷贝过去即可。
如:E:\DevelopEnvironment\solr\solr-6.2.0\dist\solr-solrj-6.2.0 和
E:\DevelopEnvironment\solr\solr-6.2.0\dist\solrj-lib
这里写图片描述

在官方的wiki中,介绍了如何使用solrj 访问solr服务。wiki地址为:
wiki

对应代码为:

        HttpSolrClient.Builder builder = new    HttpSolrClient.Builder("http://localhost:8983/solr/democore");
        HttpSolrClient solrClient = builder.build();
        SolrInputDocument document = new SolrInputDocument();
        document.addField("id", System.currentTimeMillis() + "");
        document.addField("title", "计算机科学与技术" + System.currentTimeMillis());
        solrClient.add(document);
        solrClient.commit();
        solrClient.close();

6、查询数据

可使用solr的控制台查询,也可以使用程序查询。

输入关键字 “计算机” 可查询到对应数据。如图:

这里写图片描述

输入关键字: “计科” ,也可以查询到对应数据。如图:
这里写图片描述

证明solr插入数据成功。

使用solrj查询,根据官方wiki的例子,代码如下:


        HttpSolrClient.Builder builder = new HttpSolrClient.Builder("http://localhost:8983/solr/democore");
        HttpSolrClient solrClient = builder.build();
        SolrQuery query = new SolrQuery();
        query.set("q", "title:计科");
        QueryResponse response = solrClient.query(query);
        SolrDocumentList list = response.getResults();
        solrClient.commit();
        System.err.println("匹配数量:"+list.getNumFound());
        Iterator itr = list.iterator();
        while (itr.hasNext()) {
            SolrDocument solrDocument = (SolrDocument) itr.next();
            List title = (List) solrDocument.getFieldValue("title");
            System.err.println(title.get(0));
        }

运行结果:
这里写图片描述

至此,全部完成。上述只是最基本的使用配置,对于中文的分词还是停留在最原始的每个中文都当作一个词汇的分词算法上。这是比较暴力不可取的,需要替换对应的中文分词器。

常用的几个命令:
启动:

solr start

指定端口启动:

solr start -p 8984

停止solr:

solr stop -p 8983

删除指定的core文件

solr delete -c corename

创建core

solr create -c corename

solr状态查看

solr status
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
回答: 要配置Solr定时器,你需要进行以下步骤:首先,在solrhome/dist中找到solr-dataimporthandler-5.5.0.jar,solr-dataimporthandler-extras-5.5.0.jar,solr-core-5.5.0.jar三个包,将它们一并复制到solrhome/server/lib中。然后,在solrconfig.xml文件中添加以下代码片段:<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler"><lst name="defaults"><str name="config">data-config.xml</str></lst></requestHandler>[2如果已经存在请求处理程序节点,你需要在其后面添加以下配置:<requestHandler name="/dataimport" class="solr.DataImportHandler"><lst name="defaults"><str name="config">data-config.xml</str></lst></requestHandler>[3这样就完成了Solr定时器的配置。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [solr安装笔记与定时器任务](https://blog.csdn.net/weixin_34050005/article/details/92981244)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *3* [Linux下安装Solr7.2.1以及配置Solr(CentOS7)](https://blog.csdn.net/weixin_42400413/article/details/83143176)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值