小说版权由小编李晓晖和博客园共有,若转发请于显明处标明出处:http://www.cnblogs.com/naaoveGIS/

1.背景

体系中须求在浏览器端直接上传SHP后服务端进行多少的机关入PG库以及公布至geoserver。本办法是以geotools为开发工具落成入库,以geoserver
manager来完毕劳务的自行发表。那里关键描述geotools编写SHP入库的法门。

2.Geotools介绍

2.1一体化介绍

Geotools是Java言语编写的开源GIS工具包,其效果涵盖了地理音信数据读写、处理、坐标转换、查询分析、格式化输出等三个方面。该品种已有十多年历史,生命力旺盛,代码极度充分,包括五个开源GIS项目,并且依据专业的GIS接口。Geotools主要提供各样GIS算法,各样数码格式的读写和出示。在浮现上边要差一点,只是用Swing完毕了地图的简要翻看和操作。可是用户可以按照Geotools提供的算法自己落成地图的可视化。OpenJump和udig就是根据Geotools的。
   
Geotools用到的多少个较主要的开源GIS工具包是JTS和GeoAPI。前者重即使落到实处各样GIS拓扑算法,也是依据GeoAPI的。可是出于多少个工具包的GeoAPI分别选择不相同的Java代码达成,所以在应用时索要互相转化。Geotools又按照双方定义了一部分谈得来的GeoAPI,所以代码显得臃肿,有时简单混淆。由于GeoAPI进展缓慢,Geotools自己对其进展了增加。其余,Geotools现在还只是基于2D图纸的,缺少对3D空间数据算法和展现的支撑。

Geotools The Open Source JavaGIS
Toolkit的相干学习网站如下:

http://geotools.org/   Geotools官方网站
http://docs.geotools.org/latest/javadocs/          Geotools
API在线文档
http://docs.codehaus.org/display/GEOTDOC/Home Geotools用户指南
http://repo.opengeo.org                          
   Geotools的maven仓库
http://download.osgeo.org/webdav/geotools/     
  maven仓库地址

2.2一体化架构

 图片 1

org.geotools.data包负责地理数据的读写(如:ShapefileReader用于读取shpfile数据)。

org.geotools.geometry包负责提供对JTS的调用接口,以将地理数据封装成JTS中定义的几何对象(Geometry)。

org.geotools.feature包负责打包空间几何要素对象(Feature),对应于地图中一个实体,包罗:空间数据(Geometry)、属性数据(Aitribute)、参考坐标系(Refereneedsystem)、最小外包矩形(EnveloPe)等特性,是GlS操作的中坚数据模型。

2.3geotools中的焦点Jar表达

a.GT核心库

 图片 2

里头灰色的蕴藏了要素定义、SHP读取、EPSG获取等有关办法的jar。

b.hsqldb

 图片 3

亟待般配gt-epsg-hsql来使用,能够查询相应的epsg编码。

c. Image I/O-Ext

 图片 4

援救跟GIS有关的图片格式。

d.jts

 图片 5

JTS提供了这几个空间数据类Point、MultiPointLineString、LinearRing(封闭的线条)、MultiLineString
(多条线)、PolygonMultiPolygon
、 GeometryCollection(包罗点,线,面)。JTS包结构为总计交点(noding包)、几何图形操作(operation包)、平面图(planargraph包)、多边形化(polygnize包)、精度(precision)、工具(util包)。

e.jsr、vecmath

 图片 6

做投影相关运算时要求那八个jar:
jsr-275-1.0-beta-2.jar和vecmath-1.3.1.jar。

f. opengis库

 图片 7

h.其余各种jar

含有数据库驱动的jar,log4j,XML解析的jar等等。可以兑现读取不一样数据库的多寡,对xml格式的文本比如SLD的解析等等。

3.SHP各文件的简介

shape文件由ESRI开发,一个ESRI(Environmental Systems Research
Institute)的shape文件包括一个主文件,一个索引文件,和一个dBASE表,其中主文件的后缀就是.shp。

主文件是一个直接存取,变量记录长度文件,其中每个记录描述一个有它和谐的vertices列表的shape。

目录文件中,每个记录包涵对应主文件记录离主文件头开头的晃动。

dBASE表包蕴记录的feature的特色。几何和属性间的次第对应提到是依照记录数据的。在dBASE文件中的属性记录必须和主文件中的记录是均等顺序的。

 图片 8

4.ST_Geometry函数

ST_Geometry SQL 数据类型用于存储在 DB2、Informix、Oracle 和 PostgreSQL
的地理数据库中。此数据类型可在地理数据库中应用,其余还可经过 SQL
访问第三方应用程序的简要要素类几何。ST_Geometry 执行空间的 OGC 和 ISO
SQL 多媒体规范。

Oracle中设置了SDE后,能辅助ST_Geometry函数。Oracle
Spatial版本则有其自带的SDO_Geometry相关函数。那里,大家在PostgreSQL上设置了PostGIS,使其援助ST_Geometry函数。对于空间数据的叙述,PG中接济标准的OpenGIS的三种空间数据社团格式:Well-Known
Text (WKT) 和 Well-Known Binary (WKB) 。

PostGIS在线文档:http://postgis.net/docs/manual-1.4/

空间函数文档:http://postgis.net/docs/manual-1.4/ch04.html

5.具体完结

5.1读取所有格式SHP并入库

 图片 9

图片 10

图片 11

5.2读取SHP的DBF文件

 图片 12

 

 

   
                  —–欢迎转发,但保留版权,请于分明处标明出处:http://www.cnblogs.com/naaoveGIS/

                                                               
固然您认为本文确实辅助了你,可以微信扫一扫,进行小额的打赏和鞭策,谢谢
^_^

                                 图片 13

 

相关文章

网站地图xml地图