0

我正在使用 Oracle Spatials,我有以下查询:

如果 SDO_GEOMETRY 由五个组成数据组成:

创建类型 sdo_geometry 作为对象(SDO_GTYPE NUMBER,SDO_SRID NUMBER,SDO_POINT SDO_POINT_TYPE,SDO_ELEM_INFO SDO_ELEM_INFO_ARRAY,SDO_ORDINATES SDO_ORDINATE_ARRAY);

一旦我查询数据库以获取结果集 - 我如何从上述对象获取成本数据。

我基本上对从 SDO_POINT 获取 x 和 y 坐标感兴趣,以便能够更新另一个 POJO 类中的值。

我确实通过了 JGeometry 选项:http: //download.oracle.com/docs/cd/B19306_01/appdev.102/b14373/oracle/spatial/geometry/JGeometry.html

但我可能遗漏了一些东西,我无法使用它。

任何帮助将非常感激。

4

1 回答 1

1

该类JGeometry包含在 sdoapi.jar 中。在我的安装中,我在 /apps/oracle/product/102040/md/lib/ 中找到了它。该102040部分可能对您有所不同。

从结果集中获取 SDO_Geometry,然后加载它,如下所示:

STRUCT struct = (STRUCT) resultSet.getObject(resultSetIndex);
JGeometry jGeo = JGeometry.load(struct);

然后,您可以直接从该对象中获取所需的信息。根据内容,您可能可以使用getPoint()或可能需要使用getType()getElemInfo()getOrdinatesArray()等。

于 2011-08-30T17:14:37.007 回答