es--基础--12--SpringBoot自定义逗号分词器
es–基础–12–SpringBoot自定义逗号分词器
1、设置 代码输出资源
<resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> <include>**/*.yml</include> <include>**/*.properties</include> <include>**/*.json</include> </includes> <!-- 是否替换资源中的属性 --> <filtering>false</filtering> </resource> <resource> <directory>src/main/resources</directory> <includes> <include>**/*.xml</include> <include>**/*.yml</include> <include>**/*.properties</include> <include>**/*.json</include> </includes> <!-- 是否替换资源中的属性 --> <filtering>false</filtering> </resource> </resources>
2、配置分词器
2.1、分词器json
commaAnalyzer_setting.json
{ "analysis": { "analyzer": { "comma": { "type": "pattern", "pattern": "," } } } }
2.2、代码 添加分词器
2.2.1、类上
@Setting(settingPath = "commaAnalyzer_setting.json")
2.2.2、字段上
@Field(type = FieldType.Text, analyzer = "comma",searchAnalyzer = "comma",store = true), private String fieldReaderAccount; // 业务表-可读账户字段逗号分隔,全部可读使用
2.3、查看索引信息
{ "data_record": { "aliases": {}, "mappings": { "properties": { "_class": { "type": "keyword", "index": false, "doc_values": false }, "fieldFlowStatus": { "type": "keyword", "store": true, "ignore_above": 8100 }, "fieldReaderAccount": { "type": "text", "store": true, "fields": { "keyword": { "type": "keyword", "ignore_above": 8100 } }, "analyzer": "comma" }, "uuid": { "type": "keyword", "store": true, "ignore_above": 8100 } } }, "settings": { "index": { "number_of_shards": "1", "provided_name": "data_record", "creation_date": "1679298135682", "analysis": { "analyzer": { "comma": { "pattern": ",", "type": "pattern" } } }, "number_of_replicas": "1", "uuid": "w_bcdnFKQSmHdkziDvx64g", "version": { "created": "7040299" } } } } }