elasticsearch,Java,Spring Boot,elasticsearch" /> elasticsearch,Java,Spring Boot,elasticsearch" />

Java Springframework中弹性搜索属性的相似性

Java Springframework中弹性搜索属性的相似性,java,spring-boot,elasticsearch,Java,Spring Boot,elasticsearch,我需要在elasticsearch索引中使用属性“相似性”,但在Springframework的字段注释中找不到该属性。Springframework Elasticsearch库似乎没有这个功能。我需要使用另一个库还是有简单的方法?你能推荐一个图书馆或一条路吗 您可以使用注释并在单独的文件中定义您的设置,并使用适当的相似性配置 要执行此操作,只需将@Setting(settingPath=“/path/To/settings.json”)添加到索引类中,在那里您有@Document注释 e、

我需要在elasticsearch索引中使用属性“相似性”,但在Springframework的字段注释中找不到该属性。Springframework Elasticsearch库似乎没有这个功能。我需要使用另一个库还是有简单的方法?你能推荐一个图书馆或一条路吗

您可以使用注释并在单独的文件中定义您的设置,并使用适当的相似性配置

要执行此操作,只需将
@Setting(settingPath=“/path/To/settings.json”)
添加到索引类中,在那里您有
@Document
注释

e、 g

您的
settings.json
应该如下所示:

"index": {
  "similarity": {
    "my_similarity": {
      "type": "DFR",
      "basic_model": "g",
      "after_effect": "l",
      "normalization": "h2",
      "normalization.h2.c": "3.0"
    }
  }
}

您可以在中找到更多信息。

谢谢。但我指的是一个字段的注释。例如,`@Field(type=FieldType.Text,analyzer=“some\u analyzer”,similarity=“my\u similarity”)私有字符串地址;`但是我发现有4.0.0.M3版本,你是对的,我没有检查下一个版本。您可以用枚举填充它。我需要脚本化的\u tfidf类型的相似性,但我不知道它-似乎枚举没有这种情况。。。你能给我一个建议或者给我指出类型吗?是的,脚本化的相似性不是“默认”的相似性,你应该在设置中实现它。以
scripted_tfidf
为例,它是一个文档,因此您可以根据我的回答将它添加到您的设置中,并在您的字段中使用您提到的内容:
@field(type=FieldType.Text,analyzer=“some_analyzer”,similarity=“scripted_tfidf”)私有字符串地址。但在4.0.0版本中,@Field中的相似性用作相似性枚举类型,而不是字符串,在早期版本中根本没有相似性。也许我应该在json文件中使用映射?
"index": {
  "similarity": {
    "my_similarity": {
      "type": "DFR",
      "basic_model": "g",
      "after_effect": "l",
      "normalization": "h2",
      "normalization.h2.c": "3.0"
    }
  }
}