搭建WebGIS网站

news/2024/5/20 8:05:27/文章来源:https://blog.csdn.net/xuyizhuo/article/details/94415688

转载自:https://www.cnblogs.com/mhere/p/8567805.html

搭建WebGis使用到的软件有:Java、Tomcat、GeoServer、PostgreSQL、PostGIS、OpenLayers3; 下面将一步步操作。

 

一、搭建服务器,使用软件:Java、Tomcat、GeoServer

1、安装并配置Java

    a. 下载Java1.8 :

  根据系统架构下载对应版本,32位选择“Windows x86”,64为选择“Windows x64”  URL: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 

  我的系统是64位,所以下载的文件是 jdk-8u161-windows-x64.exe

    b. 安装java:

  默认安装路径为  C:\Program Files\Java\jdk1.8.0_131\,建议在windows下选择一个目录:比如 D:\java\jdk1.8.0_161\ 

  安装路径可以根据自己选择,路径中建议不要存在汉字,或者特殊字符串,JDK 和JRE建议安装在同一个路径下。

    c.配置环境变量:

  新建用户变量:  变量名:"JAVA_HOME",变量值:"D:\Java\jdk1.8.0_161"

  新增系统变量:变量名:"CLASSPATH",变量值:".;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar"

  修改系统变量:变量名:"Path",在变量值中增加"D:\Java\jdk1.8.0_161\bin;D:\Java\jre1.8.0_161;",第一个"D:"前如果没有分号";",请补上。

 d. 检验安装java是否成功:

  在"cmd"中运行"javac"或"java -version",出现下图表示Java安装配置成功!

  

 

 2、下载GeoServer

  到http://geoserver.org/download/下载最新的released版本的war包

 

 3、安装Tomcat然后部署GeoServer

    从Tomcat官方网站下载最新的版本:https://tomcat.apache.org/download-90.cgi   建议直接下载zip包,下载后直接解压即可使用。

  a. 配置管理角色及用户:

    编辑"conf\tomcat-users.xml"文件,将最后的信息改为以下文字:

  

    然后,就可以在Tomcat中使用账号"admin",密码:"tomcat"登录管理了。

      b. 部署Geoserver的war包:

    因为war文件超过了taomcat文件附件大小限制,所以需要修改配置tomcat的配置文件:"webapps\manager\WEB-INF\web.xml"

    原来限制是50M大小,现在把前面50改为100。

  

    在浏览器地址栏输入:http://localhost:8080

  

    点击"Manager App",在登录用户名中输入“admin”,密码输入"tomcat"进入管理界面。

  

    在Deploy界面,"WAR file to deplay"操作,选择下载解压后的war文件:geoserver.war,点击"Deploy"完成部署。

  

    部署后,Application列表界面中出现:"/geoserver",点击该链接可进入部署好的Geoserver站点(或者地址栏直接输入:http://localhost:8080/geoserver/web/ 进入)。

  

    GeoServer默认登录名:admin,密码"geoserver"。

  

 

4、 地理信息数据导入及发布 

  a. 安装PostgreSQL以及PostGis扩展工具

      下载PostgreSQL:

      https://www.postgresql.org/里面的版本在windows环境下安装多次都没能成功,找了很多地方才找到正确的地址,请从这个URL下载:https://www.enterprisedb.com/products-services-training/pgbindownload

      安装PostgreSQL,安装完成后,提示下载扩展工具。

  

  

    建议不要勾选,下载太慢了!直接从http://postgis.net/windows_downloads/下载PostGIS工具,我这里下载的PostgreSQL是9.6版本的,那么对应的PostGis也要对应到版本

  

    下载到的文件为:postgis-bundle-pg96x64-setup-2.4.3-1.exe,安装即可,注意选择:"Create spatial database"。

  

    安装完毕后,使用pgAdmin管理工具,进行管理。

 

  b. 导入地理信息数据(shp文件)到PostgreSQL数据库:

    新建数据库,连接服务器,然后按下图操作:(我这有永康的行政区划数据,就用这个数据做例子吧)

  

  

    建立完成数据库后,右键该数据库,打开Query Tool

  

    使用SQL语句添加空间数据库管理插件PostGIS:   

CREATE EXTENSION PostGIS

    SQL执行成功后,刷新,数据表中会出现spatial_ref_sys,说明可以导入空间数据了(如下图)

  

    开始菜单中打开PostGIS工具,如下图

  

    连接PostgreSQL数据库

  

    点击"Add File"选择shp文件:

  

    点击"Import"导入数据到数据库。

  

    出现"Shapefile import completed.",导入完毕!

 

  c. 使用GeoServer发布数据库中的地图:

    打开浏览器,登录GeoServer管理界面,点击左侧栏目中的"工作区",在新界面中点击"添加新的工作区"

  

  

    设置工作区名称,以及命名空间(URL),然后点击"提交"完成新建。

 

    接下来新建数据存储:

  

    选择"PostGIS"

  

    设置数据源名称,PostgreSQL连接信息等。此处设置数据源名称为"xzq",连接本机数据库,连接参数如下图

  

    点击"保存",保存成功后会出现新建图层界面:

  

 

    点击"从数据计算"获得数据的边界,点击"Compute from native bounds"获得数据的经纬度边框,其他配置可按默认的来,保存即可。

  

 

    查看发布的图层效果,点击左侧的"Layer Preview",搜索刚刚添加的图层

  

     找到图层后点击"openlayers",打开预览窗口,效果如下:

  

  预览的地址为:http://localhost:8080/geoserver/yongkang2018/wms?service=WMS&version=1.1.0&request=GetMap&layers=yongkang2018:xzq&styles=&bbox=488895.09375,3182568.5,533833.5,3221317.75&width=768&height=662&srs=EPSG:2385&format=application/openlayers

  注:后面加载地图时用到。

 

二、使用openlayers浏览地图

    从openlayers官网下载最新版的openlayers: https://openlayers.org/download/,选择v*-dist.zip下载。

  

    使用openlayers的js以及css制作一个demo网页,脚本如下: 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml"><head> <meta charset="utf-8"><title>OpenLayers演示</title>  <!-- Import OL CSS, auto import does not work with our minified OL.js build -->  <link rel="stylesheet" href="./lib/openlayers/ol.css" /><!-- Import OpenLayers, reduced, wms read only version -->  <script src="./lib/openlayers/ol.js" ></script>        </head>  <body>  <div id="map"></div>  <script>//Geoserver图层预览地址: http://localhost:8080/geoserver/yongkang2018/wms?service=WMS&version=1.1.0&request=GetMap&layers=yongkang2018:xzq&styles=&bbox=488895.09375,3182568.5,533833.5,3221317.75&width=768&height=662&srs=EPSG:2385&format=application/openlayersvar format = 'image/png';var bounds = [488895.09375,3182568.5,533833.5,3221317.75];//范围,从Geoserver预览地址中bbox参数获得//底图(面)var yongkang = new ol.layer.Image({source: new ol.source.ImageWMS({ratio: 1,//自己的服务urlurl: 'http://localhost:8080/geoserver/yongkang2018/wms', //从Geoserver预览地址获得//设置服务参数params: {'FORMAT': format,'VERSION': '1.1.0',STYLES: '',//图层信息LAYERS: 'yongkang2018:xzq',}})});//设置地图投影var projection = new ol.proj.Projection({code: 'EPSG:2385',//投影编码,设置图层时所找到的编码units: 'm'});//设置地图var map = new ol.Map({//地图中的比例尺等控制要素controls: ol.control.defaults({attribution: false}).extend([new ol.control.ScaleLine()]),//设置显示的容器target: 'map',//设置图层layers: [//添加图层yongkang],//设置视图view: new ol.View({//设置投影projection: projection})});//地图显示map.getView().fit(bounds, map.getSize());        </script></body>  
</html>

保存页面后,预览效果如下:

  

    本地地理信息数据结合天地图在线影像地图的效果:

  

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_856329.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大型网站技术架构(1)

撸了今年阿里、头条和美团的面试&#xff0c;我有一个重要发现.......>>> 网站都是从小网站一步一步发展为大型网站的&#xff0c;而这之中的挑战主要来自于庞大的用户、安全环境恶劣、高并发的访问和海量的数据&#xff0c;任何简单的业务处理&#xff0c;一旦需要…

大型网站技术架构(2):架构要素和高性能架构

撸了今年阿里、头条和美团的面试&#xff0c;我有一个重要发现.......>>> 上一篇我们把整个架构演变过程大致说了一下&#xff0c;这次我们来说说从哪方面进行考虑设计 为了使网站的能够应对高并发访问&#xff0c;海量数据处理&#xff0c;高可靠运行等一系列问题&…

大型网站技术架构(3):WEB 前端性能优化

撸了今年阿里、头条和美团的面试&#xff0c;我有一个重要发现.......>>> 上次说到了性能优化策略&#xff0c;根据网站的分层架构&#xff0c;可以大致的分为 web 前端性能优化&#xff0c;应用服务器性能优化&#xff0c;存储服务器性能优化三大类 这次来说一下 w…

网站样式快速设计软件_如何(快速)设计样式指南

网站样式快速设计软件 Creating a styleguide is often a lengthy, decision-intensive exercise. Most large organizations will spend loads of time and money to make sure it fully encompasses their brand, company culture, and all of their design and marketing ne…

快速的UX批评:Kanye West的总统签名收集网站

Before we get started, I have to say that I am not at all commenting on Kanye’s politics or his right to run for office. Mostly because I don’t know what his politics are, but also because I want to keep this about 在我们开始之前&#xff0c;我不得不说&a…

在网站中内置WebRTC视频聊天

http://mozilla.com.cn/post/51923/ 在网站中内置WebRTC视频聊天 0 Felicia, 1116 我想大部分人应该都还记得“你好Chrome&#xff0c;火狐正在呼叫&#xff01;”的博客和Demo&#xff0c;向大家展示了在火狐和Chrome中进行WebRTC视频聊天&#xff0c;获得了很多朋友的注意。从…

LAMP网站架构方案分析

LAMP网站架构方案分析 LAMP网站架构方案分析 LAMP&#xff08;Linux-Apache-MySQL-PHP&#xff09;网站架构是目前国际流行的Web框架&#xff0c;该框架包括&#xff1a;Linux操作系统&#xff0c;Apache网络服务器&#xff0c;MySQL数据库&#xff0c;Perl、PHP或者Python编程…

Android webview中定制js的alert,confirm和prompt对话框的方法 (处理webview 带网站地址的弹出框)

在Android的webview中定制js的alert,confirm和prompt对话框的方法 http://618119.com/archives/2010/12/20/199.html 1.首先继承android.webkit.WebChromeClient实现MyWebChromeClient。 2.在MyWebChromeClient.java中覆盖onJsAlert,onJsConfirm,onJsPrompt三个方法。 3.在初…

网站加速--动态应用篇 (上)

--提升性能的同时为你节约10倍以上成本 From: http://blog.sina.com.cn/iyangjian 一, 引子 二&#xff0c;总体结构图 三&#xff0c;系统结构综述 四&#xff0c;环境配置以及底层基础类库 五, Memcache & Mysql 常用场景案例 六&#xff0c;更多待续 ...... -----------…

网站加速--动态应用篇 (下)

--提升性能的同时为你节约10倍以上成本 From: http://blog.sina.com.cn/iyangjian五&#xff0c; Memcache & Mysql 常用场景案例 经典篇: 更新数据&#xff1a; 写全局MC&#xff0c;然后再写DB。 读数据&#xff1a; 先读MC&#xff0c;命中返回数据。不命中则读DB&#…

jsp网站引入外部css或者js失效原因分析

路径问题 css或者js导入失效最有可能的原因就是路径错误&#xff0c;这里我给出我的网站目录结构导入css代码&#xff1a;<link rel"stylesheet" type"text/css" href"css/login.css"> 记得jsp头部需要设置相对路径&#xff1a;<%Strin…

2017 年最受欢迎的 10 个编程挑战网站

译者注&#xff1a;如果你想不断地提高自己的编程技能&#xff0c;那么不断尝试去解决那些编程中的难题&#xff0c;这是一个非常不错的途径。作者在本篇文章中列举出了10个编程挑战网站&#xff0c;你想尝试一下吗&#xff1f;以下为译文。 如果你正在在学习编程&#xff0c;那…

什么是静态网站?什么是动态网站?

什么是静态网站&#xff1f;什么是动态网站&#xff1f;对于从没有接触过网站建设的朋友来说&#xff0c;这个问题还是没有真正的了解&#xff0c;许多朋友至今还认为动态网站就是网页中有flash动画&#xff0c;即会动的东西&#xff0c;才是动态网站&#xff0c;这样的理解是会…

什么是静态网站?什么是动态网站?

什么是静态网站&#xff1f;什么是动态网站&#xff1f;对于从没有接触过网站建设的朋友来说&#xff0c;这个问题还是没有真正的了解&#xff0c;许多朋友至今还认为动态网站就是网页中有flash动画&#xff0c;即会动的东西&#xff0c;才是动态网站&#xff0c;这样的理解是会…

wamp下Apache构建局域网下的个人电脑服务器(网站根目录更改)

第一步&#xff1a;在安装盘下找到wamp64文件夹&#xff08;我安装在D盘&#xff09;。 第二步&#xff1a;在wamp64文件夹下找到bin文件夹。 第三步&#xff1a;在bin文件夹下找到Apache文件夹。 第四步&#xff1a;在Apache文件夹下找到apache2.4.27文件夹&#xff08;不同的…

用phpcms如何将静态页面制作成企业网站(中)

上篇博客中讲到了该修改网页的中间部分 中间的内容是这样的&#xff0c;有标题和内容&#xff0c;里面的内容被代码替代,运行起来就这样的 里面的内容就可以在后台管理那里添加 再来看代码部分 <div class"dt-double" style"left: 18.5%;"><!--…

10个PPT演示用图片下载网站

其中很多都支持TAG和标签搜索&#xff0c;比如在制作团队管理和建设的幻灯片的时候&#xff0c;可以直接使用Team&#xff0c;Teamwork等即可以搜索到很多有价值的图片。 1. istockphoto One of the best stock photo libraries around for price verses quality. Images from …

网站运维:PHPCMSV9安装教程

1、环境 CentOS Linux release 7.3.1611 XAMPP7.3.62、软件下载 http://download.phpcms.cn/v9/9.6/phpcms_v9.6.3_UTF8.zip 3、复制到安装位置 /opt/lampp/htdocs/ 4、开始安装 浏览器打开 http://www.baidu.com/install_package/ 即可打开安装引导 5、引导首页 6、设置…

网站运维:PHPCMS V9搭建二级域名管理后台

方法暂时不行&#xff0c;设置了二级域名&#xff0c;登上是首页&#xff0c;欢迎留言解决问题。 1、环境 centos7 xampp7.3.6 phpcms v92、设置方法1 PS&#xff1a;绑定后&#xff0c;只能通过该域名登录&#xff0c; 配置保存在 /caches/configs/system.php中&#xff0c;…

网站运维:phpcms重新安装方法

1、删除文件 网站根目录/caches/install.lock