当前位置: 首页 > 知识库问答 >
问题:

通过spring-data-elasticsearch注释添加null_value

燕正德
2023-03-14

我想使用spring-data-elasticsearch-2.1.0创建如下所示的用户索引。注释。我找不到任何注释来添加“null_value”:“null”。这是必需的,因为我们的排序顺序正在失败。

"user": {
    "properties": {
      "firstName": {
        "type": "string"
      },
      "lastName": {
        "type": "string"
      },
      "displayName": {
        "type": "string",
        "analyzer": "word_analyzer",
        "fields": {
          "raw": {
            "type": "string",
            "index": "not_analyzed",
            "null_value": "NULL"
          }
        }
      }
    }
  }

域类

 private String firstName;
 private String lastName;
 @MultiField(
         mainField = @Field(type = FieldType.String, analyzer = "word_analyzer"),
         otherFields = {
               @InnerField(suffix = "raw", type = FieldType.String, index = FieldIndex.not_analyzed)
                }
)
private String displayName;

如何在innerfield中通过spring-data-elasticsearch注释添加“null_value”:“null”?我不想在外部创建索引映射。

共有1个答案

公孙国兴
2023-03-14

目前,只有通过@mapping注释才能实现。使用映射定义创建JSON文件:

{
  "type": "string",
  "index": "analyzed",
  "analyzer": "word_analyzer",
  "fields": {
    "raw": {
      "type": "string",
      "index": "not_analyzed",
      "null_value": "NULL"
    }
  }
}

并将其保存在资源文件夹中。在本例中,我将其保存在resources/elastic/document_display_name_mapping.json中。

使用@mapping注释对字段进行注释

@Mapping(mappingPath = "elastic/document_display_name_mapping.json")
private String displayName;
 类似资料:
  • 我试图在elasticsearch spring数据中使用@query annotation来进行复杂的查询,但当我尝试下面的简单查询时,我得到了一个错误 堆栈跟踪

  • 问题内容: 我在pom.xml中有一个带有Spring Data Elasticsearch插件的Spring Boot应用程序。我创建了一个我想索引的文档类: 我还为此类创建了一个存储库: 我进行了一个测试,使用存储库对三个示例对象建立了索引。它很长,所以我只发布它。事实是,在ES服务器中创建的映射会忽略@Field批注设置的配置: 没有有关分析器的信息,“ someTransientData”

  • 我有两门课, 我的JSON文档是这样的, 我应该如何使用注释编写查询方法,通过userId和questionID查找PracticeQuestion。 谢谢你的建议。

  • 我正在尝试将Spring LDAP 池上下文源 XML 配置转换为使用注释。我能够通过遵循此处提到的一个来使 Ldap 上下文源正常工作,但我无法使池上下文源正常工作。当我运行代码时,我得到了空点异常。下面列出了 XML、注释和异常代码段。 XML配置片段, 注释配置片段, 我得到的例外,

  • 第二个问题:当elastic和mongo都有@Documnet注释时,如何注释模型类?现在我得到一个错误,认为它与这个问题有关:“找不到类的id属性” 最后,我将感谢任何关于最佳实践和更干净的编码的指导。 Spring Boot应用程序: Kafka消费者服务: 弹性配置: Kafka 配置:

  • 关于注释和注释,我遇到了一个有趣的问题在Spring Boot项目上,spring data jpa也在项目中。 基本上,我有软删除机制,这是为实体设置一个有效的日期(例如属性列在实体类中带有属性)。这些实体用注释类似于。这样,将设置为now和before的软删除的实体自动删除。(例如实体类) 我还有一些其他实体没有(例如实体类) 以及其他一些可用的表。如果是Jpa查询带注释的方法。我正面临着一些