我有这个型号:
public class Foo{
@Field(type = FieldType.String, store = true)
String color;
}
现在它映射到elasticsearch文档中的字段“color”。我可以将它映射到另一个字段:“shirtColor”?也许通过注释?
答案 0 :(得分:0)
spring-data-elasticsearch使用Jackson Object Mapper将POJO序列化为json。如果要更改存储在弹性搜索中的字段名称,可以使用@JsonProperty
属性。
public class Foo{
@Field(type = FieldType.String, store = true)
@JsonProperty("shirtColor")
String color;
}
但是,在从弹性搜索中查询数据时,您将失去使用findBy*
方法的好处,并且您必须编写自己的自定义查询来获取数据。