后台数据库与web前端交互web中地图的交互

Web Font End 一种基于一种基于Webweb前端交互的在線空间数据管理技术web前端交互的在线空间数据管理技术 方法方法 周力杰周力杰,李治洪李李治洪,李 翠翠 周力杰 等 31 华东师范大学地理科学学院上海 收稿日期2016年1月8日;录用日期2016年1月22日;发布日期2016年1月27日 摘摘 要要 本文通过基于本文通过基于B/S架构的架构的WebGIS系统,实现空间数據的系统实现空间数据的webweb前端交互可视化管理,通过web前端交互可视化管理通过HTML5、、CSS3实现实现 浏览器端数据管理浏览器端数据管理UI界面,通过界面通过Javascript实现浏览器端和用户的交互功能。服务器端使用实现浏览器端和用户的交互功能服务器端使用SQLite数据数据 库存储数据,數据库的设计采用数据存储表和数据字段映射表实现数据字段的动态管理本实验室自主库存储数据,数据库的设计采用数据存储表和数據字段映射表实现数据字段的动态管理本实验室自主 研发的研发的Geoserver2013平台充当平台充当web服务器进行服务器进行web应用的发布,通过该平台提供的一系列数据库管理应用的发布通过该平台提供的一系列数据库管理 API,AJAX技术实现数据的前后端交互,从而实现技术实现数据的前后端交互从而实现数据的web前端交互管理和后台存储功能。通过管理数据库表数据的web前端交互管理和后台存储功能通过管理数据库表 中的資源表和资源控制表,实现地理空间属性数据的共享中的资源表和资源控制表,实现地理空间属性数据的共享 关键词关键词 空间数据,web前端交互管理后台存储,数据共享空间数据,web前端交互管理后台存储,数据共享Webweb前端交互web前端交互 1. 引言引言 传统地理空间数据嘚管理需要借助专业软件如 ArcGIS、MapInfo 等,一方面用户需要购买或下载软件,并在本地安装有一定使用成本;另一方面,这类软件的专业性较強功能庞大复杂,非专业人员不易操作而在线的地理空间数据管理平台,通过集成桌面软件的主要功能和简化各功能模块的操作流程将用户常用功能在 web 平台上实现,提供更简便的操作而特定用户需要的功能通过高级定制的方式实现。使用在线的地理空间数据管理平囼可以给用户使用提供很大的便利首先,该管理平台是基于 WebGIS 的一个 B/S 结构的在线平台[1]免安装,减轻用户的使用成本;其次该平台集成叻桌面软件的常用功能,并简化了操作流程这样既能满足用户需求,又可以减少用户的学习成本;最后该平台提供了空间数据导出和茬线分享功能,用户将地图数据导出到本地也可随时随地一键分享自己的地图给特定组别,作为一个成果分享的交流平台 目前,ESRI 的 ArcGIS online [2]能基于在线环境提供地图的编辑及可视化openStreet Map [3]可以在线创建空间要素以及对要素的空间数据进行简单的编辑,地图慧[4]在线制图平台只提供空间屬性数据的管理但是他们存在一些问题,例如空间数据编辑的便捷性问题在数据编辑过程中,无法进行批量修改无法对空间数据进荇条件查询等。不支持 shp 格式空间数据的导入不支持空间数据的导出,用户采集的空间数据无法导出用户可以在线应用,但没法下载到夲地进行二次使用等等。这些工具类的软件都只是实现一部分的空间数据管理功能本平台对所有常用功能进行整合以及精简,在本平囼中得到很好的实现 2. 整体架构设计整体架构设计 根据前期的需求分析,确定相应的功能模块设计相应的 UI 界面。本文采用 HTML5 的文档类型使用标签元素搭建网页的整体框架。有了框架后通过设置 CSS 样式,尽可能的在网页中还原 UI 的界面,这时网页还只是静态页面无法与用户进荇交互,需要利用 Javascript 编写响应用户的各种事件在交互过程中需要通过 AJAX 实现前后端数据的传递。在服务器端利用本实验室具有自主知识产权嘚周力杰 等 32 Geoserver 2013 [5]平台作为 Web 服务器可以充当地图服务和数据库操作引擎。通过这些形成一套完整的前后端空间数据服务平台系统架构如图 1 所礻。 3. 关键技术关键技术 3.1. 服务器端数据库设计服务器端数据库设计 在后台数据库设计方面如果将用户上传的表格,直接做为数据库中的一張表来存储表格在数据库中的字段名必须使用英文名称,虽然这种设计会使后台库表设计以及web前端交互代码逻辑变得简便但是这种设計使得表格字段在浏览器端显示为英文名称,英文字段名不利于用户的阅读从而降低了用户的使用体验。这在库表设计上提出了新的要求在尽可能满足用户需求的情况下,也不会使库表设计的逻辑过于复杂 本平台通过数据存储表和字段信息表结合使用,可以解决以上嘚问题数据存储表用来存储表的数据,表中的字段设计采用虚拟字段 V1V2,Vi。考虑到后期表格管理的可扩展性在数据存储表中预留 50 个芓段,虽然这样会浪费少量计算机内存资源但是通过预留字段可以很好的解决字段添加和删除的问题。字段信息表用来存储字段的中英攵映射信息所有的数据库表的字段映射信息都记录在这张表中。 3.2. web前端交互脚本实现空间数据的管理web前端交互脚本实现空间数据的管理 web前端交互通过 Geoserver2013 提供的 SQLScript 和 WebSQL API [6]实现数据的上传、读取、修改等操作空间数据管理应用,如图 2 3.2.1. 数据导入数据导入 空间数据的导入分为图层的导入鉯及属性数据的导入。图层的导入格式支持 shp 格式属性数据支持 csv 格式导入。 现有的 csv 格式的数据导入都是通过将文件整个网络传到服务器端特定目录下 然后利用服务器端语言进行读取然后存入数据库表中,本文通过在web前端交互 HTML5 技术解析表格文本通过数据服务接口直接保存箌数据库中,这种方法可以减少服务器端压力[7] web前端交互 HTML 和 CSS 设计好用户上传表格的界面。属性表格数据导入传统的在 Web 端表格导入方法都昰将 csv 文件整个传到服务器端,利用服务器端语言来读取该表格中的数据然后存入数据库中最后删除该临时上传的表格。本系统通过 HTML5 提供嘚 FileReader API [8]合使用 标签元素type 属性设置为 file,利用该 API 提供的 readAsText方法读取表格中的数据保存在浏览器内存中该方法第一个参数为获取的 file 对象,第二个参數为设置的读取文件的编码方式默认是 读取完成后执行 onload 回调函数[9]中,参数 data 是存储数据的二维数组对数据进行处理,将数据分成两部分一部分存储字段映射信息,另一部分存储数据记录有了字段映射信息后,需要用户手动填写所有的字段的类型字段对应的单位信息。通过 WebSQL 中的 SQLTask、SQLc 和 SQLInsert 接口将数据传入后台服务器中存储实现表格的创建以及字段信息和表格记录的插入。在传输中浏览器会通过gzip 进行数据压縮提高数据的传输速度。 图层的导入是通过 Geoserver 提供的 Geoutil 接口将 shp 文件转成数据库要素

}

我要回帖

更多关于 web前端交互 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信