0

我正在使用带有休眠功能的java,将一个点对象保存到db。数据库是带有 PostGIS 的 Postgresql

 DB:    location        GEOGRAPHY(POINT, 4326),

CODE:   @Column(columnDefinition = "geometry(Point,4326)")
        private Point location;

我在坐标中保存一个点:-25.969130, 125.1 像这样:

GeometryFactory geometryFactory = new GeometryFactory();
Point point = geometryFactory.createPoint(new Coordinate(-25.969130, 125.1));

保存没问题,但是当我加载对象时,我得到坐标:x:-25.969130 y:54.000006

但是然后我将 y 坐标保存在 89 以下,它不会改变,只会更高。

笔记:

如果我保存 y 坐标 126.1,则返回值为 54.00006

如果我保存 y 坐标 127.1,则返回值为 53.00006

等等等等...

为什么?谢谢。

4

1 回答 1

0

PostGIS 中的点被定义为经度 - 纬度,但您提供的是纬度 - 经度。

于 2017-11-26T15:42:28.733 回答