Solr - (4)创建Core以及配置文件设置

5 篇文章 0 订阅

我们要配置一个项目,例如,叫QuestionBank,用于试题查询。则需要做以下的步骤:

1、在E:\Solr\solr-8.2.0\server\solr目录下新建一个文件夹,叫QuestionBank

2、从E:\Solr\solr-8.2.0\server\solr\configsets\_default目录中复制默认配置文件夹至我们刚刚创建的文件夹E:\Solr\solr-8.2.0\server\solr\QuestionBank中

 3、浏览器访问http://localhost:8985/solr ,在Core Admin选项中创建Core,其中name和instanceDir都与我们刚刚创建的文件名字相同,叫QuestionBank。

 4、打开我们刚刚创建的QuestionBank,可以进行查询

当前我们的Solr中还没有数据,接下来我们配置数据类型和录入数据。

5、配置数据类型

方法(一):在Web中Add Field,此方法直观,简单。但是,因为没有int等类型,也不够快捷。我们使用方法二

方法(二)

(1)打开E:\Solr\solr-8.2.0\server\solr\QuestionBank\conf下的managed-schema 文件,使用记事本等工具打开

(2)根据我数据库的类型,我需要以下字段及类型

修改字段id为ID,并新增如下字段

   <field name="QuestionGuid" type="string" indexed="true" stored="true" required="true" multiValued="false" />   
   <field name="ID" type="int" indexed="true" stored="true" required="true" multiValued="false" /> 
   <field name="SubjectID" type="int" indexed="true" stored="true" multiValued="false" /> 
   <field name="KnowledgeID" type="int" indexed="true" stored="true" multiValued="false" /> 
   <field name="TypesID" type="int" indexed="true" stored="true" multiValued="false" /> 
   <field name="DifficultyID" type="int" indexed="true" stored="true" multiValued="false" /> 
   <field name="SearchContent" type="string" indexed="true" stored="true" /> 
   <field name="Content" type="string" stored="true" /> 

 (3)将<uniqueKey>id</uniqueKey>修改为<uniqueKey>QuestionGuid</uniqueKey>

 (4)删除以下我们暂时用不到的字段:

  <field name="_nest_path_" type="_nest_path_"/>
  <field name="_root_" type="string" docValues="false" indexed="true" stored="false"/>
  <field name="_text_" type="text_general" multiValued="true" indexed="true" stored="false"/>

 (5)新增字段类型

	<fieldType name="double" class="solr.TrieDoubleField" positionIncrementGap="0" docValues="true" precisionStep="0"/>
	<fieldType name="doubles" class="solr.TrieDoubleField" positionIncrementGap="0" docValues="true" multiValued="true" precisionStep="0"/>
	<fieldType name="float" class="solr.TrieFloatField" positionIncrementGap="0" docValues="true" precisionStep="0"/>
	<fieldType name="floats" class="solr.TrieFloatField" positionIncrementGap="0" docValues="true" multiValued="true" precisionStep="0"/>
	<fieldType name="int" class="solr.TrieIntField" positionIncrementGap="0" docValues="true" precisionStep="0"/>
	<fieldType name="ints" class="solr.TrieIntField" positionIncrementGap="0" docValues="true" multiValued="true" precisionStep="0"/>

(5)保存,并重启solr。重要!!一定要重启。重启命令:solr restart -p 8985

         如果不重启solr,直接导入下面的数据,则可能solr会自动覆盖我们刚刚编辑的managed-schema 文件,导致我们刚刚进行的设置无效。如果不小写被覆盖了,请重新进行刚刚那字段的配置。

6、简易的写入一些数据

{"ID":2,"SubjectID":1,"KnowledgeID":258,"TypesID":15,"DifficultyID":3,"Content":"<p>局域网中以太网采用的通信协议是<u>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </u>。</p>","SearchContent":"局域网中以太网采用的通信协议是。"},
{"ID":3,"SubjectID":1,"KnowledgeID":257,"TypesID":15,"DifficultyID":2,"Content":"<p>信息技术就是计算机技术(&nbsp;&nbsp;&nbsp;&nbsp; )</p>","SearchContent":"信息技术就是计算机技术(     )"}

7、再去进行查询,可以看到我们插入的数据

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值