跳到主要内容

空间类型

DeepSeek V3 中英对照 Spatial types

Spring Data Neo4j 支持以下空间类型

支持的转换

  • Spring Data 通用的 Point必须是数据库中的 WGS 84-2D/SRID 4326 点)

  • GeographicPoint2d(WGS84 2D/SRID 4326)

  • GeographicPoint3d(WGS84 3D/SRID 4979)

  • CartesianPoint2d(笛卡尔 2D/SRID 7203)

  • CartesianPoint3d(笛卡尔 3D/SRID 9157)

派生查找器关键字

如果你使用的是原生的 Neo4j Java 驱动 org.neo4j.driver.types.Point 类型,你可以在派生的查找器方法中使用以下关键字和参数类型。

在某个区域内查询:

  • findBy[…​]Within(org.springframework.data.geo.Circle circle)
    在给定的圆形区域内查找。

  • findBy[…​]Within(org.springframework.data.geo.Box box)
    在给定的矩形区域内查找。

  • findBy[…​]Within(org.springframework.data.neo4j.repository.query.BoundingBox boundingBox)
    在给定的边界框区域内查找。

备注

你也可以使用 org.springframework.data.geo.Polygon,但需要通过调用 BoundingBox#of 将其传递到 BoundingBox 中。

查询某点附近:

  • findBy[…​]Near(org.neo4j.driver.types.Point point) - 返回按与给定点的距离升序排序的结果

  • findBy[…​]Near(Point point, org.springframework.data.geo.Distance max)

  • findBy[…​]Near(Point point, org.springframework.data.domain.Range<Distance> between)

  • findBy[…​]Near(Range<Distance> between, Point p)