gpt4 book ai didi

java - Spring Data Elasticsearch - 使用规范器创建关键字字段

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:02:51 27 4
gpt4 key购买 nike

我们正在使用 spring-data-elasticsearch 项目来连接我们的 elasticsearch 集群,现在已经使用它大约一年了。最近,我们迁移到 elasticsearch 5.x(从 2.x),我们现在有了“关键字”数据类型。

我想将这些关键字索引为小写值,我知道这可以通过字段规范化器来完成。我无法在文档或在线的任何地方找到可以通过基于注释的映射向字段添加规范化器的地方。例如

@Field(type = FieldType.keyword, <some_other_param = some_normalizer>)

这是可以做到的吗?我知道我们也可以使用基于 JSON 的映射定义,所以如果需要我会回退到那个选项,但如果可能的话我希望能够这样做。

如有任何帮助,我们将不胜感激!

最佳答案

由于@xhaggi 的 pull request 已经合并(spring-data-elasticsearch 3.1.3+ 或 Spring Boot 2.1.1),我们在 normalizer 注解中有一个 @Field 字段。

要使用它,我们需要:

  1. 用参数 @Field 声明一个 @InnerField 或一个 type = FieldType.Keyword, normalizer = "%NORMALIZER_NAME%"
  2. 在类级别添加 @Setting(settingPath = "%PATH_TO_NORMALIZER_JSON_FILE%")
  3. 将规范器映射放入 %PATH_TO_NORMALIZER_JSON_FILE% 的 json 文件中

Example of usage

关于java - Spring Data Elasticsearch - 使用规范器创建关键字字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46084660/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com