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