WEBGIS:从创建空间数据库、发布数据到调用WMS服务全栈演示

WEBGIS:从创建空间数据库、发布数据到调用WMS服务全栈演示

一、将shp数据导入到postgis数据库

  1. 安装所需要的软件和环境,需要PostgreSQL数据库文件创建和存储软件和postgis空间数据导入工具软件:以下是我安装的相关软件的版本,安装的版本首选稳定性
Postgresql15:用于创建数据库和管理数据 下载网址(https://www.postgresql.org/download/)

Postgis-bundle-pg15:用于导入具有空间属性的数据到创建的数据库里面,根据Postgresql的版本来下载相对应的版本。
下载网址(https://www.postgresql.org/download/)
  1. 打开postgresql软件下面的pgmin模块,输入密码(该密码就是安装该软件的时候设置的密码)
  2. 刷新网址就可以看到软件界面都变成中文显示
  3. 创建数据库:右键左边栏的数据库然后创建一个新的数据库,数据库命名,然后选择数据库的用户(postgres),创建好数据库之后还没有结束
  4. 数据确定导入:设置好SRID后点击导入 ,导入成功之后就可以使用pgmin软件打开数据库然后进行SQL语句查询

连接数据库:点击最上方的【View connection details…】选项然后填写导入的目标数据库相关信息

在这里插入图片描述


图表 1:该表是一个示例,第一个是数据库拥有者的名字,第二个是数据库的密码,第三个是默认的,最后一个是自己创建的数据库的名字

空间数据导入到SQL数据库:首先打开安装的postgis软件中的(PostGIS Post Boundle 1 for PostgreSQL *64 15Shapefile and DBF Loader Exporter)模块,然后点击添加文件,将需要导入的矢量文件选中,然后就可以看到这个界面:

在这里插入图片描述


接下来要设置里面的SRID码,该代码就是指代该空间数据的地理或投影坐标系的编号,我们可以使用Arcmap软件打开该矢量数据,然后查看该数据属性(源)就可以获取该矢量数据的SRID码

创建数据库拓展服务:选中新建的数据库,然后点击:

在这里插入图片描述


该功能框进入到数据库查询界面,在该界面输入:create extension postgis;然后点击运行按钮(▶)就可以启动拓展服务

在这里插入图片描述

设置软件中文显示:

在这里插入图片描述


在这里插入图片描述

二、将postgis数据库中的数据发布成标准地图服务

  1. 需要安装的软件或者应用有:

1.1先安装Java的运行环境(安装可以存放到D盘),安装结束后可以配置运行路径,然后打开cmd(win + r)输入:java -version
1.2然后安装 Tomcat服务器,该安装路径要与Java的安装路径是一致的,安装过程中需要注意的是有一个安装用户和密码的设置,后续使用tomcat登录服务器访问geosever服务然后登陆使用的账号就是这个

在这里插入图片描述


访问localhost:8080端口查看是否可以成功访问

1.3安装geosever:将【geosever.war】压缩包文件裁剪然后粘贴到(./Tomcat7.0/webapps)的目录下就可以了,粘贴后会自动出现一个geosever文件夹(或者可以手动解压到该文件夹目录下)至于该安装包的下载可以直接访问

geosever官网https://geoserver.org/download/
在这里插入图片描述


在这里插入图片描述

Figure :以上是我下载的相应软件的版本安装包和压缩包2. 安装所需的软件之后我们可以基于以下两个步骤来访问到geosever网站

2.1步骤一:访问tomcat软件的端口localhost:8080,然后在该网页点击【ManageApp】输入账号和密码(这里的信息就是安装tomcat是设置的账号和密码,一般为admin和123456),进去管理员的界面,我们要点击启动geosever,启动服务。

在这里插入图片描述

2.2步骤二:直接输入网址:

http://localhost:8080/geoserver/web/

就可以跳转到geosever网址(当然这两种方法都是在已经启动tomcat服务器的前提下),进入网址之后也要登录用户(这里登录的与tomcat那里登录的用户和密码是一样的)

在这里插入图片描述

添加新的数据存储:点击【数据存储】,然后点击【添加新的数据存储】,在对话框里面选择要导入的数据类型的数据库,我们导入的是矢量数据,所以
将里面的数据库数据添加到新的数据工作区,这里选择postgis来导入矢量数据
接下来还要设置几个参数:

这一张示意截图不是我自己创建的,这个是我在网上学习的时候顺便截的,是B站的一名技术博主,如果有侵犯权益联系我删除

>这一张示意截图不是我自己创建的,这个是我在网上学习的时候顺便截的,是B站的一名技术博主,如果有侵犯权益联系我删除

Geosever创建新的工作区:点击左边菜单栏的【工作区】,然后点击【添加新的工作区】,给新建的工作命名,命名空间也是随便(有一定格式),除此之外还要选择服务(这里选择WMS和WFS服务,WFS服务开启方便后续进行数据动态更新和修改与序列化),最后可以点击【提交】

在这里插入图片描述


在这里插入图片描述

4.1工作区:选择刚刚新建的工作区
4.2数据源名称:这里是自己新命名一个新的名称(建议英文)
4.3database:选择要导入的数据库(本次在postgreSQL 15新建的数据库名称)
4.4user:数据库的拥有者,一般为posgres
4.5passwd:数据库的密码(就是在pgmin那里新建的数据库的密码123456)

在这里插入图片描述
  1. 出现问题:通过导入数据库的形式来发布数据库的空间数据但是没有自动跳转到发布的界面,这时候你需要确定新建的工作区是否选择服务,确定选择服务了之后就点击左边菜单栏的【服务】里面的【WMS】,然后再此界面选择新建的工作区,就可以发布连接的数据库里面的数据表作为新图层了

数据预览:点击左边菜单栏的【layer view】,然后找到自己的工作区,点击添加的图层名称就可以预览数据啦

在这里插入图片描述


在这里插入图片描述

如果没有发布选项,我们可以点击左边菜单栏下的【数据】目录下的【图层】选项,然后再点击【添加新的资源】,再选择新建的工作区导入的数据库作为新的图层,就可以看到成功导入的postgis数据库下面的数据表,然后依次点击发布即可(发布里面的设置按照上面的示例)

在这里插入图片描述

设置好之后就可以点击【保存】,然后点击【发布】,点击发布还会进入到设置阶段,在这里需要设置边框数据(一般是自动计算出来),计算出来之后就可以点击保存了

在这里插入图片描述

三、使用OpenLayers调用wms服务加载发布地图

  1. 具体实现效果:可以使用open layers地图框架在浏览器应用上面调用Geosever发布的地图服务。
  2. 打开geosever管理客户端:localhost:8080/geosever/web,点击图层栏然后先选择要导入的图层(这些图层都是已经提前发布好的了)
  3. 调用WMS数据源的语法结构:
//WMS图层 - ImageLayer类型(先增加数据源然后增加数据图层)const WMSsource =newImageWMS({url:'http://localhost:8080/geoserver/WEBsevse/wms',params:{'LAYERS':'WEBsevse:bou2_4p','VERSION':'1.1.0','FORMAT':'image/png','TRANSPARENT':true,'SRS':'EPSG:4326','STYLE':''},serverType:'geoserver',crossOrigin:'anonymous',ratio:1});const WMSLayer =newImageLayer({source:WMSsource,opacity:0.7,visible:true})
  1. crossOrigin是跨域配置:anonymous表示任何人都可以访问

自有数据加载成功界面:

在这里插入图片描述


点击【切换为城市矢量地图】按钮切换图层

在这里插入图片描述

如果出现报错:由于跨域问题(编译器是localhost:5432,浏览器是localhost:8080)无法加载数据,我们可以采用以下解决方案(可以选择添加服务,如果源文件有对应的代码,只是被注释掉了,我们取消注释即可,该文件位于tomcat/conf/web.xml)

在这里插入图片描述


说明:如果源web.xml文件里面没有对应的跨域服务,我们可以自己添加对应的代码,但是一定要好好检查,一般是有的,只是被注释掉了

params里面的参数设置是数据源信息的设置,没有规律可言,要在geosever数据查询的网页那里查看:

在这里插入图片描述


说明:差不多是这样(不重要,可以继续往下做)

注意参数设置:第一个参数是url,geosever地图服务的地址,这个地址可以直接在geosever里面的数据浏览那里的网页复制,或者可以在该浏览器页面然后点击【检查】来实现请求来查看url码:
方法一:直接复制浏览器界面的头顶位置上面的网址,里面有url需要的信息

在这里插入图片描述


方法二:

在这里插入图片描述


在这里插入图片描述


以上三张查看url码的截图也是我在B站学习时直接截取的(只是一个方法和途径说明的作用)

结语:创作不易,给个赞吧🥺。文章如有不对的地方或者对文章有疑问的欢迎私信or联系小编,交流乐意至极。如果需要小编的完整web地图项目(or只需要代码)的欢迎留言。

Read more

无人机树木计数目标检测数据集(附YOLOv1-v13资料和部分代码)

无人机树木计数目标检测数据集(附YOLOv1-v13资料和部分代码)

小伙伴们好,我是小嬛。专注于人工智能、计算机视觉领域相关分享研究。【目标检测、图像分类、图像分割、目标跟踪等项目都可做,也可做不同模型对比实验;需要的可联系(备注来意)。】 引言: 目标检测开源数据集是计算机视觉领域的重要基石,支撑目标检测任务的算法研发、模型训练与性能评估,兼顾样本的丰富性、场景的覆盖性与应用的通用性。它包含海量标注精细的图像或视频样本,覆盖日常场景(如行人、车辆、家具)、自然场景(如动物、植物、地形)、工业场景(如机械零件、生产流水线)等数十类通用目标,也涵盖医疗场景(如血细胞、病灶区域)、遥感场景(如建筑、农田、舰船)、自动驾驶场景(如交通标志、障碍物)等专业领域目标。优质的目标检测开源数据集不仅样本数量充足、场景多样性强,还具备精准的目标边界框标注(部分含目标类别、姿态、遮挡状态等属性信息),并合理划分为训练集、验证集与测试集,能够有效支撑算法创新与模型优化,

Open-AutoGLM应用场景拓展:自动打卡机器人部署案例

Open-AutoGLM应用场景拓展:自动打卡机器人部署案例 1. 引言 1.1 技术背景与业务需求 在现代企业办公环境中,考勤打卡已成为日常管理的重要环节。然而,手动打卡不仅耗时,还容易因遗忘、网络延迟或通勤问题导致异常记录。尽管部分应用已支持Wi-Fi或地理位置自动识别,但其灵活性和兼容性仍有限。随着AI智能体技术的发展,基于视觉语言模型的自动化操作框架为解决这一痛点提供了全新思路。 Open-AutoGLM 是智谱开源的一款面向手机端的 AI Agent 框架,依托 AutoGLM-Phone 架构,能够通过多模态理解屏幕内容,并结合 ADB(Android Debug Bridge)实现对安卓设备的自动化控制。用户只需输入自然语言指令,如“打开企业微信完成上班打卡”,系统即可自动解析意图、识别界面元素、规划操作路径并执行点击流程,真正实现“零干预”自动化任务处理。 本篇文章将聚焦于 Open-AutoGLM 在自动打卡场景中的实际落地实践,详细介绍从环境搭建、设备连接到指令执行的完整部署流程,并分享关键配置建议与常见问题解决方案,帮助开发者快速构建属于自己的智能打卡

低代码AI化爆发:OpenClaw成企业数字化破局关键

低代码AI化爆发:OpenClaw成企业数字化破局关键

企业数字化转型喊了多年,却始终卡在两难境地:纯代码开发周期长、成本高、迭代慢,中小团队耗不起;传统低代码看似快捷,却只能做简单表单和固化流程,适配不了复杂业务,智能化更是形同虚设。        如今低代码AI化迎来全面爆发,行业彻底告别“拖拽凑数”的浅层次应用,可多数平台依旧停留在AI插件拼接的伪智能阶段。直到OpenClaw的落地,才真正打通了低代码、AI与企业业务的壁垒,凭借原生智能体能力,补齐企业数字化的最后一块短板,成为转型落地的核心抓手。 一、行业痛点:企业数字化的三座拦路大山        抛开浮华的概念,企业做数字化转型,最怕的不是没工具,而是工具不实用、不落地,当前市面上的方案普遍存在三大硬伤,卡死转型进度: * AI与业务割裂:低代码搭载的AI仅能做表层代码生成、问答交互,无法深度理解业务逻辑、对接企业现有系统,智能能力用不上、落地难; * 开发门槛仍偏高:即便用低代码,仍需专人配置流程、对接数据、调试权限,业务人员无法自主操作,技术团队负担依旧繁重; * 数据安全存隐患:多数AI能力依赖云端接口,企业核心业务数据、经营数据需要外发,隐

终极VRCT使用指南:快速掌握VRChat跨语言沟通神器

终极VRCT使用指南:快速掌握VRChat跨语言沟通神器 【免费下载链接】VRCTVRCT(VRChat Chatbox Translator & Transcription) 项目地址: https://gitcode.com/gh_mirrors/vr/VRCT 在虚拟社交蓬勃发展的今天,语言障碍已成为VRChat玩家面临的主要挑战。VRCT作为专业的实时翻译和语音转录工具,通过智能双语互译与先进语音识别技术,彻底解决了跨语言沟通难题,让日语、英语、中文等十多种语言用户都能享受流畅的国际交流体验。 🚀 零基础快速入门:5分钟完成安装配置 环境准备与安装步骤 1. 获取项目源码:克隆项目仓库 git clone https://gitcode.com/gh_mirrors/vr/VRCT 2. 一键安装:运行bat目录下的install.bat脚本 3. 依赖自动配置:首次安装约需5-10分钟完成环境配置 首次运行基础设置 * 语言配对选择:在主界面设置源语言与目标语言组合