首页 > 编程学习 > Elasticsearch 6.1.2 (一)中文分词设置、字符串字段排序设置
20181 月21

Elasticsearch 6.1.2 (一)中文分词设置、字符串字段排序设置

<span class="kwd">if</span> <span class="pun">(!</span>
<span class="pln">esService</span>
<span class="pun">.</span>
<span class="pln">isExistsType</span>
<span class="pun">(</span>
<span class="pln">cfg</span>
<span class="pun">.</span>
<span class="kwd">get</span>
<span class="pun">(</span>
<span class="str">"es.index.name"</span>
<span class="pun">),</span>
<span class="pln"> type</span>
<span class="pun">))</span> <span class="pun">{</span>
                <span class="com">//初始化索引表</span>
                <span class="typ">XContentBuilder</span>
<span class="pln"> mapping </span>
<span class="pun">=</span>
<span class="pln"> jsonBuilder</span>
<span class="pun">().</span>
<span class="pln">startObject</span>
<span class="pun">()</span>
                        <span class="pun">.</span>
<span class="pln">startObject</span>
<span class="pun">(</span>
<span class="pln">type</span>
<span class="pun">)</span>
                        <span class="pun">.</span>
<span class="pln">startObject</span>
<span class="pun">(</span>
<span class="str">"_all"</span>
<span class="pun">)</span>
<span class="com">//设置IK分词</span>
                        <span class="pun">.</span>
<span class="pln">field</span>
<span class="pun">(</span>
<span class="str">"analyzer"</span>
<span class="pun">,</span> <span class="str">"ik_max_word"</span>
<span class="pun">)</span>
                        <span class="pun">.</span>
<span class="pln">field</span>
<span class="pun">(</span>
<span class="str">"search_analyzer"</span>
<span class="pun">,</span> <span class="str">"ik_max_word"</span>
<span class="pun">)</span>
                        <span class="pun">.</span>
<span class="pln">field</span>
<span class="pun">(</span>
<span class="str">"term_vector"</span>
<span class="pun">,</span> <span class="str">"no"</span>
<span class="pun">)</span>
                        <span class="pun">.</span>
<span class="pln">field</span>
<span class="pun">(</span>
<span class="str">"store"</span>
<span class="pun">,</span> <span class="str">"false"</span>
<span class="pun">)</span>
                        <span class="pun">.</span>
<span class="pln">endObject</span>
<span class="pun">()</span>
                        <span class="pun">.</span>
<span class="pln">startObject</span>
<span class="pun">(</span>
<span class="str">"properties"</span>
<span class="pun">)</span>
                        <span class="pun">.</span>
<span class="pln">startObject</span>
<span class="pun">(</span>
<span class="str">"CASNM"</span>
<span class="pun">).</span>
<span class="pln">field</span>
<span class="pun">(</span>
<span class="str">"type"</span>
<span class="pun">,</span> <span class="str">"text"</span>
<span class="pun">).</span>
<span class="pln">field</span>
<span class="pun">(</span>
<span class="str">"analyzer"</span>
<span class="pun">,</span> <span class="str">"ik_max_word"</span>
<span class="pun">).</span>
<span class="pln">endObject</span>
<span class="pun">()</span>
                        <span class="pun">.</span>
<span class="pln">startObject</span>
<span class="pun">(</span>
<span class="str">"IQDAT"</span>
<span class="pun">).</span>
<span class="pln">field</span>
<span class="pun">(</span>
<span class="str">"type"</span>
<span class="pun">,</span> <span class="str">"text"</span>
<span class="pun">).</span>
<span class="pln">field</span>
<span class="pun">(</span>
<span class="str">"index"</span>
<span class="pun">,</span> <span class="str">"true"</span>
<span class="pun">).</span>
<span class="pln">field</span>
<span class="pun">(</span>
<span class="str">"fielddata"</span>
<span class="pun">,</span>
<span class="str">"true"</span>
<span class="pun">).</span>
<span class="pln">endObject</span>
<span class="pun">()</span>
                        <span class="pun">.</span>
<span class="pln">startObject</span>
<span class="pun">(</span>
<span class="str">"ANNODAT"</span>
<span class="pun">).</span>
<span class="pln">field</span>
<span class="pun">(</span>
<span class="str">"type"</span>
<span class="pun">,</span> <span class="str">"text"</span>
<span class="pun">).</span>
<span class="pln">field</span>
<span class="pun">(</span>
<span class="str">"index"</span>
<span class="pun">,</span> <span class="str">"true"</span>
<span class="pun">).</span>
<span class="pln">field</span>
<span class="pun">(</span>
<span class="str">"fielddata"</span>
<span class="pun">,</span>
<span class="str">"true"</span>
<span class="pun">).</span>
<span class="pln">endObject</span>
<span class="pun">()</span>
                        <span class="pun">.</span>
<span class="pln">endObject</span>
<span class="pun">()</span>
                        <span class="pun">.</span>
<span class="pln">endObject</span>
<span class="pun">()</span>
                        <span class="pun">.</span>
<span class="pln">endObject</span>
<span class="pun">();</span>
<span class="pln">
                esService</span>
<span class="pun">.</span>
<span class="pln">putMapping</span>
<span class="pun">(</span>
<span class="pln">cfg</span>
<span class="pun">.</span>
<span class="kwd">get</span>
<span class="pun">(</span>
<span class="str">"es.index.name"</span>
<span class="pun">),</span> <span class="str">"inquiry"</span>
<span class="pun">,</span>
<span class="pln"> mapping</span>
<span class="pun">);</span>
            <span class="pun">}</span>

    <span class="com">/**
     * @param indexName 索引名
     * @param type      数据类型(表名)
     * @param mapping   mapping对象
     */</span>
    <span class="kwd">public</span> <span class="kwd">boolean</span>
<span class="pln"> putMapping</span>
<span class="pun">(</span>
<span class="typ">String</span>
<span class="pln"> indexName</span>
<span class="pun">,</span> <span class="typ">String</span>
<span class="pln"> type</span>
<span class="pun">,</span> <span class="typ">XContentBuilder</span>
<span class="pln"> mapping</span>
<span class="pun">)</span> <span class="pun">{</span>
        <span class="typ">PutMappingRequest</span>
<span class="pln"> mappingRequest </span>
<span class="pun">=</span> <span class="typ">Requests</span>
<span class="pun">.</span>
<span class="pln">putMappingRequest</span>
<span class="pun">(</span>
<span class="pln">indexName</span>
<span class="pun">).</span>
<span class="pln">type</span>
<span class="pun">(</span>
<span class="pln">type</span>
<span class="pun">).</span>
<span class="pln">source</span>
<span class="pun">(</span>
<span class="pln">mapping</span>
<span class="pun">);</span>
        <span class="typ">PutMappingResponse</span>
<span class="pln"> response </span>
<span class="pun">=</span>
<span class="pln"> getClient</span>
<span class="pun">().</span>
<span class="pln">admin</span>
<span class="pun">().</span>
<span class="pln">indices</span>
<span class="pun">().</span>
<span class="pln">putMapping</span>
<span class="pun">(</span>
<span class="pln">mappingRequest</span>
<span class="pun">).</span>
<span class="pln">actionGet</span>
<span class="pun">();</span>
        <span class="kwd">return</span>
<span class="pln"> response</span>
<span class="pun">.</span>
<span class="pln">isAcknowledged</span>
<span class="pun">();</span>
    <span class="pun">}</span>

.field(“fielddata”,”true”) //text字段默认不允许排序,是单独设置数据格式

本文地址:https://wizzer.cn/archives/3385 , 转载请保留.

本文目前尚无任何评论.

发表评论