将纬度和经度作为点存储在 PostgreSQL 数据库中并在 Java 中处理

问题描述 投票:0回答:1

我正在开发一个项目,需要将纬度和经度存储在 PostgreSQL 数据库的坐标字段中。我决定使用 PostgreSQL 中的 Point 数据类型来有效地表示这些坐标。但是,我不确定在 Java 中处理此问题的最佳方法以及如何在实体类中删除。 例如:双纬度 =17.4343, 双长 =76.4343

更好的方法来存储要存储在数据库中的坐标以及如何接受实体类。

给我最好的建议,将坐标存储到 PostgreSQL 数据库

java postgresql entity
1个回答
0
投票

阅读文档:Postgres JDBC 驱动程序文档:几何数据类型

关键是使用 postgres JDBC 驱动程序中的

PGpoint
类(还有更多“几何”类型,并且每个类型都有一个 java 类可用)。

您可以简单地使用

preparedStatement.setObject(colRef, instanceOfPGpoint)
在查询中使用点,并使用
PGpoint p = resultSet.getObject(colRef, PGpoint.class)
进行查询。文档建议你必须进行强制转换。你不需要 - 这种形式对眼睛更好看并且更标准一点,我建议你使用 2-arg
getObject

© www.soinside.com 2019 - 2024. All rights reserved.