【问题标题】:Spring Elastic Search Custom Field namesSpring Elastic Search 自定义字段名称
【发布时间】:2016-02-05 20:31:16
【问题描述】:

我是 Elastic Search 的新手,我正在尝试使用 Spring-data-elasticsearch 来实现它。

我们的弹性搜索文档中有名称为“Transportation”、“Telephone_Number”等名称的字段。

当我尝试将我的 @Domain 对象字段与这些字段映射时,我没有获得任何数据,因为我无法成功映射这些字段。

尝试使用@Field,很失望,因为它没有'name'属性来映射自定义字段名称。

尝试了 GETTER 函数的不同变体,但似乎都没有映射到这些字段。

我开始怀疑这里是否缺少一些东西。 域对象字段应该如何映射到名为“Transportation”之类的字段?

任何帮助表示赞赏

【问题讨论】:

    标签: elasticsearch spring-data spring-data-elasticsearch


    【解决方案1】:

    您可以使用自定义名称。 Spring Data ES 使用 Jackson。因此,您可以使用@JsonProperty("your_custom_name") 在 ES Mapping 中启用自定义名称

    例如:

    @Document(indexName = "your_index_name", type = "your_type_name")
    public class YourEntity {
       ....
       @JsonProperty("my_transportation")
       @Field(type = FieldType.String, searchAnalyzer = "standard", indexAnalyzer = "standard", store = true) // just for example
       private String myTransportation;
       ....
    }
    

    注意:无论如何我很抱歉,我的英语很糟糕..:D

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多