Geometry 空间地理对象,Oracle中存储Geometry对象的字段类型是 MDSYS.SDO_GEOMETRY,在数据库中构建Geometry对象的方法:

v_pointarray MDSYS.sdo_ordinate_array;

MDSYS.SDO_GEOMETRY(2003,20131028,null,

MDSYS.SDO_ELEM_INFO_ARRAY(1, 1003, 1),

v_pointarray);

其中 20131028是空间参考系。

在java程序中如何读写带有Geometry对象的表呢,常用的geotools工具包。在maven工程中引用jar包jts-1.13.jar

读取Geometry对象

在java映射的数据库表实体类对象的字段中添加Geometry类型,如下:

@Column(name = "GEOM")

private Geometry geom;

这样就能读取到Geometry 对象,Geometry 有很多空间计算方法,具体可以查看源码。

写入Geometry对象

相对于读取,写入就相对麻烦一些,首先要构建一个Geometry对象,分点线面的构建:

private GeometryFactory geometryFactory = JTSFactoryFinder.getGeometryFactory(null);

点的构建

Envelope e = new Envelope(new Coordinate(x, y));

线的构建

LineString line = geometryFactory.createLineString(Coordinate[]);

line.setSRID(20131028);

rb.setGeometry(line);

其中,rb实体类对象的Geometry的定义格式如下:

@Column(name = "PKG_CONVEX", jdbcType = JdbcType.STRUCT)

private Geometry geometry;

一定要指定jdbcType 类型,Oracle数据库中Geometry对象只接收STRUCT类型的数据。

java geometry mysql_java程序操作Geometry对象相关推荐

  1. java mysql geometry_java程序操作Geometry对象

    Geometry 空间地理对象,Oracle中存储Geometry对象的字段类型是 MDSYS.SDO_GEOMETRY,在数据库中构建Geometry对象的方法: v_pointarray MDSY ...

  2. geometry java_java程序操作Geometry对象(示例代码)

    Geometry 空间地理对象,Oracle中存储Geometry对象的字段类型是 MDSYS.SDO_GEOMETRY,在数据库中构建Geometry对象的方法: v_pointarray MDSY ...

  3. java书籍_Java程序员必看的 13 本 Java 书籍!

    原文:Java程序员必看的 13 本 Java 书籍! 作者: java技术栈 关乎于程序员,除了做项目来提高自身的技术,还有一种提升自己的专业技能就是:多!看!书! 毕竟,书是学习的海洋呢!So,J ...

  4. 反射创建对象_如何应用Java反射技术灵活地创建程序类的对象实例

    软件项目实训及课程设计指导--如何应用Java反射技术灵活地创建程序类的对象实例 1.如何应用属性配置文件实现对系统中的配置信息进行读写操作 Java中的属性配置文件主要可以作为软件应用系统及项目的配 ...

  5. oracle几何体数据类型,Oracle数据库之spatial操作geometry方法

    本文主要向大家介绍了Oracle数据库之spatial操作geometry方法,通过具体的内容向大家展现,希望对大家学习Oracle数据库有所帮助. 两个对象之间关系: RELATE SDO_GEOM ...

  6. PostgreSql操作geometry

    GIS开发对数据的操作,主要是对空间数据的操作.PostgreSql提供了一些处理空间数据的函数,操作起来是比较方便的.下面就记录一下,最近做项目里面用到的一些,也是比较常用的. 空间数据 介绍这些函 ...

  7. Java程序员“找对象”攻虐

    嗯? 在后台经常会收到这样一类私信,大致是这样描述的: 看来关于「程序员找对象」这个话题,非常有必要用一篇文章来专门梳理和归纳一下了. 择日不如撞日,今天就把这件事情给安排了吧. 可以说,方法多得很! ...

  8. PostGIS 操作geometry方法

    WKT定义几何对象格式: POINT(0 0) --点 LINESTRING(0 0,1 1,1 2) --线 POLYGON((0 0,4 0,4 4,0 4,0 0),(1 1, 2 1, 2 2 ...

  9. Redis 基础 Jedis -- Jedis(Java程序操作Redis的工具)

    文章目录 1. Jedis -- Jedis(Java程序操作Redis的工具) 1.1 Jedis简介 1.2 HelloWorld(Jedis版) 1.2.1 准备工作 1.2.2 编写Java程 ...

最新文章

  1. 使用js实现微信小页面翻页的原理介绍
  2. php 安全设置总结。
  3. TypeScript React
  4. C# Winform 窗体美化(一、IrisSkin 换肤库)
  5. python课程设计矩阵对角线之和,为每个python numpy用不同的值填充矩阵对角线
  6. Windows Server 2016-管理Active Directory复制任务
  7. RabbitMq的基本认识和配置(一)
  8. NGUI中的UIGrid
  9. 基于NumPy实现随机梯度下降算法
  10. “中华优秀科普图书榜”
  11. MySQL配置文件配置
  12. matlab转置的问题
  13. php值班系统,php简单的值日值班处理方法
  14. 掌控你的信息流:在自己的VPS上部署RSSHub
  15. 三套简单的迷宫地图生成方案
  16. 3天72小时,全国首个区块链周都讲了些啥 | 一文读懂
  17. 读完这篇文章,你就是下一个时间管理大师。
  18. Can‘t checkout because of unmerged files                 You have to resolve all merge conflicts bef
  19. 怎样把普洱熟茶泡得更好喝?
  20. 高速USB模式下 UAC2.0

热门文章

  1. 马克思主义基本原理概论-练习题带答案
  2. C语言从菜鸟到笨鸟 第一天
  3. 夜来风雨声,WebSocket 知多少!
  4. Cascade-RCNN
  5. Neat Download Manager Mac(多线程下载管理器)
  6. 山地自行车系统的组成部分及论如何自己组装一台山地车
  7. Cannot connect to database (possibly bad driver/URL combination)
  8. 【数据结构与算法】课程设计报告
  9. ML之SSL:Semi-Supervised Learning半监督学习的简介、应用、经典案例之详细攻略
  10. 百度浏览器android,百度浏览器app下载