我是Elastic Search的新手,我正在尝试使用Spring-data-elasticsearch实现它。
我的字段名称为" Transportation"," Telephone_Number"在我们的弹性搜索文档中。
当我尝试将@Domain对象字段映射到那些字段时,我无法获取任何数据,因为我无法成功映射这些字段。
试图使用@Field,感到失望,因为它没有' name'用自定义字段名称映射的属性。
尝试了GETTER功能的不同变体,其中没有一个似乎映射到那些字段。
我开始想知道我在这里找不到的东西。 域对象字段如何映射到一个名为" Transportation" ?
任何帮助表示赞赏
答案 0 :(得分:9)
您可以使用自定义名称。 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