JTS 中tostring
时间: 2023-09-27 22:07:39 浏览: 96
在 JTS(Java Topology Suite)中,`toString` 方法用于将对象转换为字符串表示形式。具体而言,`toString` 方法用于将几何对象转换为其文本表示形式。
例如,如果您有一个 `Point` 对象 `point`,您可以使用 `toString` 方法将其转换为字符串表示形式:
```java
Point point = new Point(1.0, 2.0);
String pointString = point.toString();
System.out.println(pointString);
```
输出将会是类似于以下内容的字符串:
```
POINT (1.0 2.0)
```
这是 `Point` 对象的文本表示形式,其中 `POINT` 是几何类型,`(1.0 2.0)` 是该点的坐标。
对于其他几何类型(如 `LineString`、`Polygon` 等),它们的 `toString` 方法也会返回类似的文本表示形式。
相关问题
JTS 中tostring()
JTS(Java Topology Suite)是一个用于处理空间数据的Java库。在JTS中,`toString()`方法用于将几何对象转换为字符串表示形式。
例如,如果你有一个Point对象,你可以使用`toString()`方法将其转换为字符串:
```java
Point point = new Point(1, 1);
String str = point.toString();
System.out.println(str);
```
输出将会是类似于`POINT (1 1)`的字符串。
对于其他类型的几何对象,`toString()`方法的输出格式也会有所不同。你可以根据需要在代码中使用`toString()`方法来查看几何对象的字符串表示形式。
如何通过JAVA读取并输出Oracle中的geometry类型数据中的Geometry.sdo.gtype
在Java中读取Oracle中的几何类型(Geometry)数据,并获取`Geometry.sdo.gtype`属性,通常需要使用JDBC连接数据库和特定的GIS库,如OGDI (Oracle Geodatabase API) 或者JTS Topology Suite。
首先,你需要建立JDBC连接到Oracle数据库:
```java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
String url = "jdbc:oracle:thin:@<your_host>:<port>:<service_name>";
String username = "<your_username>";
String password = "<your_password>";
try {
Connection conn = DriverManager.getConnection(url, username, password);
// ... 连接建立成功后继续
} catch (SQLException e) {
System.out.println("Error connecting to Oracle: " + e.getMessage());
}
```
然后,你可以使用SQL查询来检索包含Geometry类型的数据,例如从表中选择包含geometry列的行:
```sql
SELECT column_name, geometry_column.sdo.gtype FROM your_table WHERE geom_column IS NOT NULL;
```
替换`column_name`, `geometry_column`, 和 `your_table`为实际的列名和表名。
接下来,在查询结果集(ResultSet)中,可以遍历每一行获取`sdo.gtype`:
```java
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
int gType = rs.getInt("geometry_column.sdo.gtype");
String gTypeName = GeometryType.fromInteger(gType).toString(); // 如果有对应的映射函数,例如GeometryType.java
System.out.println("Geometry type: " + gTypeName);
}
rs.close();
stmt.close();
conn.close();
```
注意,这涉及到对Oracle Spatial数据类型的支持以及一些GIS库的使用,比如OGDI的`GeometryType`类。如果你没有集成这样的库,可能需要查找相关的开源解决方案或者使用Oracle提供的Spatial Java API。
阅读全文