解决spring data elasticsearch @Field配置分词器 analyzer无效问题

解决spring data elasticsearch @Field配置分词器 analyzer无效问题,第1张

解决spring data elasticsearch @Field配置分词器 analyzer无效问题

spring data elasticsearch 配置搜索实体配置正确 但是分词器无法在elasticsearch加上 ,可能原因是 @Field 上的 type 必须用FieldType.Text ,如果不是会导致所有的 analyzer都无法配置上,原因是text才会使用分词,而Keyword之类的不会分词,所以导致elasticsearch putMappinge接口报错。
错误的写法

    @Field(type = FieldType.Keyword, searchAnalyzer = "ik_smart", analyzer = "ik_max_word")
    private String title;

正确的写法

    @Field(type = FieldType.Text  , searchAnalyzer = "ik_smart", analyzer = "ik_max_word")
    private String title;

新版本的初始化索引用的Api是下面这个 可以项目启动就初始化一下防止插入数据时候索引不存在而报错

elasticsearchRestTemplate.indexOps(XXXXX.class);

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5688090.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存