【问题标题】:Custom GeoPoint object in Spring Data ElasticsearchSpring Data Elasticsearch 中的自定义 GeoPoint 对象
【发布时间】:2021-02-09 00:29:47
【问题描述】:

使用弹簧靴 2.3.4。

有没有办法使用自定义 GeoPoint 对象而不是 org.springframework.data.elasticsearch.core.geo.GeoPoint ?

如果是这样,如何覆盖映射? putMapping 已弃用。

@Document(indexName="myIndex")
public class MyDocument{
    @GeoPointField
    private MyPositionDocument position;
    // currently this only works with
    // private GeoPoint position;

【问题讨论】:

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


    【解决方案1】:

    您已经有了第一部分,用@GeoPointField 注释属性。这可确保写入正确的索引映射,以便 position 的类型为 geo_point

    接下来,您需要创建自定义转换器,以将 MyPositionDocument 转换为 Elasticsearch (https://www.elastic.co/guide/en/elasticsearch/reference/current/geo-point.html#geo-point) 支持的类型,并将一个转换器用于另一个方向。

    关于注册自定义转换器,见https://docs.spring.io/spring-data/elasticsearch/docs/current/reference/html/#elasticsearch.mapping.meta-model.conversions

    【讨论】:

      猜你喜欢
      • 2017-07-07
      • 2017-09-19
      • 2021-03-03
      • 2019-04-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-15
      • 1970-01-01
      • 2021-03-15
      相关资源
      最近更新 更多