solr 6.3 入门(三)

关于solr schema.xml 的配置网上教程有很多,作者我的简单说下最近编程使用到的一些技巧

field 属性

<field name="_version_" type="long" indexed="true" stored="true" multiValued="false"/>

表示确切的日段,属性名 name 不可以用通配符去匹配  type 表示类型 有点类似于 java 的string ,int,float,double等,只要跟JAVA的类型对应上就行,还有一些类型就是可能是你定义的分词器 例如text_ik ik分词器,庖丁解牛等自定义的分词器类型

eg:

  1. <fieldType name="text_ik" class="solr.TextField">   
  2.      <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>   
  3. </fieldType>  


indexed 表示是否被索引,通俗来说 就是这个字段可否被作为关键字搜索

stored 表示是否储存 也就是在core上是否显示这个数据 或被检索出数据来 可根据情况设值

multiValued 这个值 表示是否允许多个值,除非是该field 存放的 集合的,一般都设置为false,一般刚入门的小伙伴都不知道这个值是干嘛用的,

通俗来说,如果你想这个放多个字符串的集合,就要将这个值设置为true.



copyfield

 <fields>  

5.           <field name="title" type="text" indexed="true" stored="false" />  

6.          <field name="content" type="text" indexed="true" stored="false" />  

8.           <field name="tc" type="text" indexed="true" stored="false" multiValued="true"/>  

10.      </fields>  

11.      <copyField source="title" dest="tc" />  

12.      <copyField source="content" dest="tc" /> 


copyField 一般是用来 存放多个域的 比如你可能搜索的时候需要用到 商品名字 goodsname 和 商品简介 goodsintro 来共同作为搜索,那好 这时 copyField 这个属性 就派上用场了,起到了整合多个域的作用。例子可参照上面的写,multiValued要设置为 true


<dynamicField name="Param*"type="int"indexed="true"stored="true"/>

动态域名 可用通配符匹配你想要的存放的域 比如现在定义了Param* ,其中*号是通配符,起到可以将 param1,或者parama,前缀一样域匹配到这个域上

起到跟field一样的作用,只是这个是动态的。




关于solrj 的使用

在网上有很多关于 solrj的使用 ,最近一段时间的学习,就拿几个连接与大家分享下


solrj入门

solrj入门到放弃



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值