域的简介:域相当于数据库的表字段,用户存放数据,因此用户根据业务需要去定义相关的 Field
(域),一般来说,每一种对应着一种数据,用户对同一种数据进行相同的操作。
域的常用属性:
· name
:指定域的名称
· type
:指定域的类型
· indexed
:是否索引
· stored
:是否存储
· required
:是否必须
· multiValued
:是否多值
分析根据我们搜索页面的业务域按一下原则进行:
1.
要不要根据此字段进行搜索
2.
此字段结果需不需要显示
3.
用不用的到此字段
满足以上
3
个条件中的一个,就需要配置为业务域
分词器的配置:我们已经在solr在window的安装中已经提到了ik分词器插件的安装,安装完后我们需要在solrhome的schema,xml中来配置ik分词器,配置如下:
<!-- ik分词器 -->
<fieldType name="text_ik" class="solr.TextField">
<analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>
</fieldType>
一般域的配置:
<field name="item_goodsid" type="long" indexed="true" stored="true" />
域为item_goodsid我们在使用spring data solr 的时候会用到这个域
type就是指定这个域存放的数据类型
indexed=true就是需要索引
复制域的配置:
<!-- 复制域 -->
<field name=
"item_keywords" type="text_ik" indexed="true"
stored="false"
multivalued="true"/>
<
copyField source="item_title"
dest="item_keywords"/>
<copyField source="item_category"
dest="item_keywords"/>
<copyField source="item_seller"
dest="item_keywords"/>
<copyField source="item_brand"
dest="item_keywords"/>
动态域的配置:
<
dynamicField name="
attr_*" type="string" indexed="true" stored="true" multiValued="true"/>