十分钟GIS——geoserver+postgis+udig从零开始发布地图服务

本文主要是介绍十分钟GIS——geoserver+postgis+udig从零开始发布地图服务,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1数据库部署

1.1PostgreSql安装

  • 下载到安装文件后(postgresql-9.2.19-1-windows-x64.exe),双击安装。
  • 指定安装目录,如下图所示
  • 指定数据库文件存放目录位置,如下图所示
  • 指定数据库访问管理员密码,如下图所示:
  • 指定端口,默认即可
  • 指定数据库支持的编码方式,我们中文一般采用如下图所示: 
  • 点击直到finish即完成安装。

1.2Postgis安装

完成安装后,会提示安装postgis2.0 forpostgres9.2的空间数据库扩展。如下图所示,进行下载,我们这里已经提前下载下来的,直接点击取消。

  • 双击下载后的文件(postgis-bundle-pg92x64-setup-2.1.8-1.exe),开始安装,单击I Agree
  • 选择复选框Create spatial database,单击next
  • 指定安装路径,如下图

 

  • 输入安装postgresql时的密码,其他默认,选择“next”完成安装。

  • 对空间模板数据库命名,默认名称,单击next,直到完成安装。

1.3创建空间数据库

完成postgis安装后,连接pgAdmin III,查看是否存在数据库postgis_21_sample,如果未创建成功,按下面操作执行:

  • 在开始菜单中单击psql,打开psal,
  • 输入命令行,创建数据库postgis_21_sample,此时数据库为普通数据库

create database postgis_21_sample;

  • 转到新建的数据库postgis_21_sample

\c postgis_21_sample

  • 运行添加扩展语句

cCREATE EXTENSION postgis;

CREATE EXTENSION pgrouting;

CREATE EXTENSION postgis_topology;

CREATE EXTENSION fuzzystrmatch;

CREATE EXTENSION postgis_tiger_geocoder;

CREATE EXTENSION address_standardizer;

扩展后的数据库即为空间数据库如下图,比普通库增加了5个扩展,3个架构及很函数。

  • 执行命令根据模板库创建空间库

CREATE DATABASE test TEMPLATE= postgis_21_sample

或者也可以通过pgAdmin III创建空间数据库

1.4数据入库

在开始菜单中单击运行PostGIS Shapfile and DBF loader

单击View connetion details

输入数据库连接信息,如下图

在log window中会提示连接成功

单击Add File,选择需要导入的数据,可以同时选择多个文件

单击open,添加到import list中

选择数据导入模式,默认为Create,

在SRID列下方对应输入导入文件坐标系信息,wgs84坐标系为4326,CGCS2000坐标系为4490

单击Options, 在options的字符集设置为GBK.

最后单击Import命令,开始进行数据导入。

shp导入错误及其解决方案

错误1:如果改成gbk仍然提示这种字符编码问题,options编码改成gb18030,即可不报错。

错误:2:dbffile (.dbf) can not be opened.

解决:shp文件路径不能太深,且路径名称不能有中文.

错误3 :postgis导出shp的中文乱码:

在环境变量中添加:PGCLIENTENCODING=GBK即可。正常导出无乱码。

2Geoserver环境部署

1.1JAVA安装配置

这里就不详细介绍安装过程,需要配置的环境变量有说如下:

JAVA_HOME   C:\Program Files\Java\jdk1.8.0_121 (具体路径以实际安装为准)

Path        %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

CLASSPATH   ..;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

1.2Tomcat部署

下载压缩包后,直接解压放置在任意目录下,且保证目录中无中文名称,

接下来开始配置环境变量:

TOMCAT_HOME=D:\apache-tomcat-9.0.0.M18

CATALINA_HOME=D:\apache-tomcat-9.0.0.M18

CATALINA_BASE=D:\apache-tomcat-9.0.0.M18

Classpath=%TOMCAT_HOME%\lib\servlet-api.jar;

Path=%CATALINA_HOME%\bin;

至此,配置工作完成!打开bin文件夹,双击startup.bat, 启动tomcat,打开浏览器,输入http://localhost:8080 出现Tomcat的网页,证明安装并配置成功!

1.3Geoserver部署

将Geoserver的war压缩包复制到tomcat的webapps目录下,在Tomacat的bin目录下,点击startup.bat文件启动tomcat。启动tomcat时上边复制在webapps文件夹下的Geoserver.war包会自动解压。

启动完成后,在浏览器输入“http://localhost:8080/geoserver/web/”即可打开geoserver的首页,这时候使用账号密码登陆,账号为:admin,密码为geoserver

1.4udig配置地图

1添加地图文件

打开udig后打开图层Layer->Add

选择数据源,这里我们选择PostGIS,单击next

 输入数据库连接参数,单击next

选择连接数据,单击list,在列表中选择需要加载的图层,单击finish,加载数据。

2样式编辑

加载数据文件后,在Layers下面右键需要配置样式的图层,点击Change Style,即可打开Style Editor编辑窗口,进行样式编辑

3地图服务发布

3.1矢量地图服务发布

1创建工作区

单击数据栏下的【工作区】,进入工作区界面,选择单击【添加新的工作区】

分别输入工作区的名称、URL,设置为默认工作区,单击提交,完成工作区的创建

2添加数据

在数据栏下单击【数据存储】,进入数据存储界面,单击【添加新的数据存储】

选择数据源类型,这里我们选择PostGIS

分别输入各项连接参数,如下图,*表示为必填参数。

单击保存,数据库中的图层即展示在界面中,如下图

3添加地图样式

在数据栏下单击【Styles】,进入Styles界面,单击【Add a new style】

在newe style界面,分别填写style的名称、工作区、加载style的格式、加载style文件。

单击【Validate】验证,如果在界面上端提示NO Validation errors,则表明验证通过,单击【提交】完成Styles加载。

4服务发布

单击数据栏下的【图层】,进入图层界面,单击【添加新的资源】

选择已经添加的数据,如下图

选择单击对应的图层后面的【发布】命令,进入编辑图层界面

在编辑图层界面中,定义SRS,计算边框范围

单击【发布】,设置发布图层对应的Style,单击保存。

4创建图层组

单击数据栏的【图层组】命令,进入图层中界面,选择添加新图层组

如下图,分别填写参数名称、工作区、坐标参考系、计算边界、添加以发布的图层,最后保存

​​​​​​​

3.2影像地图服务发布

在Geoserver中的ImageMosaic插件可以实现将两个或者两个以上的多幅影像进行镶嵌,并使坐标相同的多幅影像重叠成一个连续图象。

  1. 数据的准备

ImageMosaic不支持Erdas Image格式,需要.img格式进行格式转换

2.发布流程参考矢量地图服务发布,资源选择影像资源即可

这篇关于十分钟GIS——geoserver+postgis+udig从零开始发布地图服务的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/688877

相关文章

Android 悬浮窗开发示例((动态权限请求 | 前台服务和通知 | 悬浮窗创建 )

《Android悬浮窗开发示例((动态权限请求|前台服务和通知|悬浮窗创建)》本文介绍了Android悬浮窗的实现效果,包括动态权限请求、前台服务和通知的使用,悬浮窗权限需要动态申请并引导... 目录一、悬浮窗 动态权限请求1、动态请求权限2、悬浮窗权限说明3、检查动态权限4、申请动态权限5、权限设置完毕后

定价129元!支持双频 Wi-Fi 5的华为AX1路由器发布

《定价129元!支持双频Wi-Fi5的华为AX1路由器发布》华为上周推出了其最新的入门级Wi-Fi5路由器——华为路由AX1,建议零售价129元,这款路由器配置如何?详细请看下文介... 华为 Wi-Fi 5 路由 AX1 已正式开售,新品支持双频 1200 兆、配有四个千兆网口、提供可视化智能诊断功能,建

TP-Link PDDNS服将于务6月30日正式停运:用户需转向第三方DDNS服务

《TP-LinkPDDNS服将于务6月30日正式停运:用户需转向第三方DDNS服务》近期,路由器制造巨头普联(TP-Link)在用户群体中引发了一系列重要变动,上个月,公司发出了一则通知,明确要求所... 路由器厂商普联(TP-Link)上个月发布公告要求所有用户必须完成实名认证后才能继续使用普联提供的 D

微服务架构之使用RabbitMQ进行异步处理方式

《微服务架构之使用RabbitMQ进行异步处理方式》本文介绍了RabbitMQ的基本概念、异步调用处理逻辑、RabbitMQ的基本使用方法以及在SpringBoot项目中使用RabbitMQ解决高并发... 目录一.什么是RabbitMQ?二.异步调用处理逻辑:三.RabbitMQ的基本使用1.安装2.架构

Java中使用Java Mail实现邮件服务功能示例

《Java中使用JavaMail实现邮件服务功能示例》:本文主要介绍Java中使用JavaMail实现邮件服务功能的相关资料,文章还提供了一个发送邮件的示例代码,包括创建参数类、邮件类和执行结... 目录前言一、历史背景二编程、pom依赖三、API说明(一)Session (会话)(二)Message编程客

windos server2022的配置故障转移服务的图文教程

《windosserver2022的配置故障转移服务的图文教程》本文主要介绍了windosserver2022的配置故障转移服务的图文教程,以确保服务和应用程序的连续性和可用性,文中通过图文介绍的非... 目录准备环境:步骤故障转移群集是 Windows Server 2022 中提供的一种功能,用于在多个

解决systemctl reload nginx重启Nginx服务报错:Job for nginx.service invalid问题

《解决systemctlreloadnginx重启Nginx服务报错:Jobfornginx.serviceinvalid问题》文章描述了通过`systemctlstatusnginx.se... 目录systemctl reload nginx重启Nginx服务报错:Job for nginx.javas

五大特性引领创新! 深度操作系统 deepin 25 Preview预览版发布

《五大特性引领创新!深度操作系统deepin25Preview预览版发布》今日,深度操作系统正式推出deepin25Preview版本,该版本集成了五大核心特性:磐石系统、全新DDE、Tr... 深度操作系统今日发布了 deepin 25 Preview,新版本囊括五大特性:磐石系统、全新 DDE、Tree

Linux Mint Xia 22.1重磅发布: 重要更新一览

《LinuxMintXia22.1重磅发布:重要更新一览》Beta版LinuxMint“Xia”22.1发布,新版本基于Ubuntu24.04,内核版本为Linux6.8,这... linux Mint 22.1「Xia」正式发布啦!这次更新带来了诸多优化和改进,进一步巩固了 Mint 在 Linux 桌面

多模块的springboot项目发布指定模块的脚本方式

《多模块的springboot项目发布指定模块的脚本方式》该文章主要介绍了如何在多模块的SpringBoot项目中发布指定模块的脚本,作者原先的脚本会清理并编译所有模块,导致发布时间过长,通过简化脚本... 目录多模块的springboot项目发布指定模块的脚本1、不计成本地全部发布2、指定模块发布总结多模