毕业设计(论文)-基于WebGIS的福建省耕地土壤查询系统服务端设计与实现.doc_第1页
毕业设计(论文)-基于WebGIS的福建省耕地土壤查询系统服务端设计与实现.doc_第2页
毕业设计(论文)-基于WebGIS的福建省耕地土壤查询系统服务端设计与实现.doc_第3页
毕业设计(论文)-基于WebGIS的福建省耕地土壤查询系统服务端设计与实现.doc_第4页
毕业设计(论文)-基于WebGIS的福建省耕地土壤查询系统服务端设计与实现.doc_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

全套设计加扣 3012250582本科毕业设计说明书论文题目: 基于WebGIS的福建省耕地土壤 查询系统服务端设计与实现 学 院: 资源与环境学院 专业年级: 空间信息与数字技术2012级 学 号: 姓 名: 指导教师、职称: 2016年4月20日The Design and Implementation for the Server-side of Fujian Soil Resource Information System Based on WebGISCollege: College of Resoures and Environment Specialty and Grade: Spatial Information and Digital Technology ,2012Number: Name: Advisor: Submitted time: April 20,2016 目录目录1摘要IAbstractI1 引言- 1 -1.1 背景及意义- 1 -1.2 国内外现状与存在问题- 2 -2 系统相关技术简介- 3 -2.1 MVC- 3 -2.2 Tomcat7- 3 -2.3 PostgreSQL- 3 -2.4 GeoServer+ GeoWebCache- 4 -2.5 HTML+ OpenLayers- 4 -3 系统概要设计- 5 -3.1 系统设计目标- 5 -3.2 系统运行流程- 5 -3.3 需求分析- 5 -3.3.1 功能分析- 5 -3.3.2 系统运行环境- 6 -4 系统功能分析与设计- 7 -4.1 OGC标准服务介绍- 7 -4.1.1 OGC规范- 7 -4.1.2 OGC相关服务介绍- 7 -4.1.3 主流WebGIS服务器对比- 7 -4.1.4 服务平台设计- 8 -4.1.5 WFS服务接口介绍- 9 -4.1.6 WMS服务接口介绍- 10 -4.1.7 REST接口和SOAP接口- 12 -4.2 耕地地理信息服务管理与发布- 13 -4.2.1 系统地理数据组成- 13 -4.2.2 GeoServer 服务管理与发布- 14 -4.2.3 GeoServer WMS SLD地图配图- 16 -4.3 系统功能设计- 17 -4.3.1 用户登录- 17 -4.3.2 用户注册- 18 -4.3.3 用户注销- 20 -4.3.4 用户修改个人信息- 20 -4.3.5 用户修改密码- 21 -4.3.6 管理员修改系统及个人信息- 22 -4.3.7 管理员修改自己密码- 23 -4.3.8 数据库设计- 24 -4.3.9 页面之间的跳转- 25 -4.3.10 登录过滤器- 25 -5 实现和测试- 26 -5.1 登录注册模块的实现- 26 -5.1.1 登录- 26 -5.1.2 注册- 27 -5.2 数据库连接的实现- 28 -5.3 修改信息的实现- 28 -5.4 页面跳转的实现- 29 -5.5 登录过滤器的实现- 29 -5.6 测试- 30 -5.6.1 登录测试- 30 -5.6.2 注册测试- 31 -5.6.3 信息修改及显示的实现- 32 -5.6.4 页面之间的跳转- 33 -5.6.5 登录过滤器的实现- 33 -5.6.6 OGC地图服务提供与测试- 33 -6 总结与展望- 35 -6.1 总结- 35 -6.2 展望- 35 -参考文献- 36 -致谢- 37 -2摘要随着计算机技术以及互联网技术的发展,基于互联网的Web GIS技术也逐渐呈现出其新的特点和趋势。Web GIS的应用也与人们的生活息息相关,促进了城市数字化以及实现对土地资源的合理利用。在这科学技术发展的时代,传统的土地资源管理技术所呈现的弊端逐渐显现出来,人们不得不探索出一条全新的道路来实现土地资源的信息化管理,如何将土地资源管理与互联网技术结合实现土地资源管理信息化将会是当今社会一项重要的研究课题。本文以福建省部分地区的土地资源信息为样例,通过运用Java编程语言和web开发技术与开源的地理信息开发工具相结合,设计了以web为平台的土地资源信息管理系统。关键字:Java Web、GeoServer、土地资源管理、WebGISAbstractWith the development of computer technology and Internet technology, the Web GIS based on the Internet also gradually present its new characteristics and trends. The Web GIS application also closely related to peoples life, it promote Digitalization of City and realize the reasonable use of land resources. In this time of science and technology development, the disadvantages of the traditional land resource management techniques presented gradually appeared, people have to explore a new way to realize information management of land resources, How to combine land resources management with Internet technology to realize the land resources management informatization will be an important research topic in todays society.The text will be make the land resources information of some parts of Fujian province for the sample, using the Java programming language and web development technologies combined with the open geographic information development tool, designed for web platform of land resources information management system.Key words: Java web、GeoServer、land resource management、WebGISII1 引言1.1 背景及意义WebGIS俗称万维网地理信息系统,是利用Web技术来完善地理信息系统的一项技术,是将英特网技术应用在GIS的开发中。随着因特网技术的不断发展和人们对地理信息的需求日益增长,利用因特网发布空间数据,为用户提供空间数据查询和空间分析功能,在当今社会已经成为地理信息系统发展的必然趋势,于是,基于因特网技术的GISWebGIS就应运而生1。在WebGIS以前,尽管一些商家为不同的操作系统分别提供了不同版本的GIS软件,但是GIS软件并没有真正做到跨平台,而由于Java是一种跨平台的语言,因此基于Java 的WebGIS也可以做到“一次编译到处运行”,充分体现了Java的扩平台特性。如今WebGIS作为GIS发展的前沿,在全球范围内都得到了广泛的应用。它在资源管理、土壤耕地管理、灾害防护和环境保护等方面都有着广泛的应用。目前GIS的应用已经深入到人们的生活中,也逐步发展到各个领域当中。本文是在WebGIS的基础上,结合GeoServer和Java语言,建立了福建省耕地土壤查询系统。如图1.1所示: 图 1.1 系统整体功能模块1.2 国内外现状与存在问题目前对于WebGIS的研究主要是集中在空间数据的结构、模型和传输协议以及网络环境下的空间信息组织管理等方面,遵循着GIS标准和理论的研究结果,基于Internet,采用B/S体系结构或多级B/S体系结构,利用分布式面向对象技术如Java等技术来构造WebGIS。国际上研发WebGIS的软件公司最常见的有ESRI公司的ArcIMS、AutoDesk、公司的MapGuide、MapInfo的MapXtreme等。国内的WebGIS软件有Geo地图服务器和客户端Applet MapExpress、GeoStar、SuperMap等。他们有的使用J2EE跨平台的技术架构,有的具备有面向不同操作系统的版本。由于互联网技术的快速发展,使得WebGIS也进入了高速发展的时代,用户对空间信息服务的要求也越来越高,但是对于这个尚未成熟的WebGIS来说,仍然面临着许多的技术难点和问题2。(1) 由于硬件设备以及互联网网络带宽的限制,大量的空间数据传输的速度并不能满足广大用户的需求,因为WebGIS需要处理大量的图形图像数据,这使得WebGIS站点的访问速度越来越慢。(2) 目前的WebGIS在实际应用开发中是相对独立的,它有自己的空间信息数据、运行平台和环境,并不能做到跨地区跨部门共享数据共享、空间数据也无法实现跨平台访问,这也导致了大量空间数据不能得到重新利用,而造成了资源的浪费。(3) 传统的WebGIS是利用ASP和HTML作为主要的信息传输工具。但由于HTML和ASP页面生成之后信息是处于静态的,只能够用于数据表达,不支持矢量图形,不能准确的描述出数据内部的结构和联系,因此只能用于简单的空间地理信息数据的查询和分析。尽管WebGIS任然面临着许多的问题,但目前WebGIS在耕地和土壤方面也已经得到非常广泛的应用了,在运用WebGIS技术基础上结合其他GIS的相关技术,实现网上耕地土壤信息化管理和应用,以WebGIS为空间信息管理平台,实现了基本的地图操作、耕地土壤信息的查询、用地适宜性评价等功能。2 系统相关技术简介2.1 MVCMVC即模型(model)、视图(view)、控制器(controller),是一种软件设计典范,用一种业务逻辑、界面、数据及显示分离的方法组织代码,是将业务逻辑集中到一个部件里面,在与用户交互的同时,无需重新编写业务逻辑。MVC可用于映射传统的输入、输出和处理功能到图形化用户界面的结构中。 MVC是一种框架模式,而并非是一种设计模式,可以理解是Servlet+JavaBean+HTML模式,这种模式适合开发复杂的Web应用。Servlet用于处理用户的请求,JavaBean用于封装数据,HTML用于数据信息的显示。MVC是将应用程序的输入、处理和输出分离开,降低模块之间的耦合,提高应用的可扩展性3。模型、视图和控制器都有各自的任务,每个功能都相对独立。第一层的模型表示的是一种企业数据和业务规则,是用于处理数据逻辑的部分,应用于模型的代码可以在多个视图重用,提高代码的复用性;第二层的视图是用户所能看到的并与之交互的界面,用于显示数据,MVC可以为应用程序处理很多不同的视图;而控制器是应用程序中实现用户交互的部分,负责控制用户的输入,从视图读取数据,并向模型发送数据。2.2 Tomcat7Tomcat是Apache 软件基金会的一个核心项目,是由Apache、Sun 和一些公司及个人共同开发而成的。Tomcat的技术先进,性能也相对稳定,是属于轻量级应用,它作为一种免费的、开源的Web应用服务器,深受广大Java编程人员和Java爱好者推崇和喜爱,目前在很多中小型系统中,都应用了Tomcat服务器,它也是目前比较流行的Web应用服务器。Tomcat是Jakarta的一个子项目,最初是为了JavaServlet技术而开发的。它的第一个版本是3.x系列的,目前的最新版本是9.0,Tomcat是JavaServerPages和JavaServlet技术的实现标准,经过多年的发展,在2001年被选为最具创新的Java产品,深受开发人员的喜爱。2.3 PostgreSQLPostgreSQL是一种先进的对象-关系数据库,它能支持数据库的各种功能,具备类、继承等对象数据库的特征。它是目前功能最强大、结构最复杂的开源数据库管理系统4。PostgreSQL具有的特性:51、 开放特性:在PostgreSQL中含有丰富的数据类型,它还允许用户定义基于正规SQL类型的新类型,可以让数据库理解复杂的数据,自定义的类型中可以包含继承关系。2、 可编程性:PostgreSQL数据中同样拥有许多编程接口,如ODBC、JDBC(Java)、Libpq(C/C+)等,用户可以利用这些接口进行开发。3、 可定制性:PostgreSQL中拥有的编程语言可以支持和实现函数功能,通过函数输出的是一系列行类型的集合,在查询中可以当作表来使用,被定义成创建者或者调用者时,也可以运行这些函数。4、 索引手段:用户可以使用一系列内置的索引或者自定义索引方法;PostgreSQL同时还支持反向索引检索、表达式索引、部分索引、位图索引扫描。本系统中是通过pgAdmin III对PostgreSQL进行操作的。2.4 GeoServer+ GeoWebCacheGeoServer是OpenGIS Web 服务器规范的 J2EE 的实现,它遵循OGC标准,利用 GeoServer 可以方便的发布地图服务和矢量地理数据,也允许用户对地理数据进行更删改查等操作10。通过 GeoServer ,用户之间可以迅速的共享空间地理信息。GeoServer的主要特性:主要兼容WMS和WFS特性的,支持 PostGIS、Shapefile、Oracle、MySQL、MapInfo等工具;支持多种投影;能够将网络地图输出为jpeg、gif、png、KML等格式;能够运行在任何基于 J2EE/Servlet 容器之上;除此之外还包括许多其他的特性。GeoWebCache是一个采用Java实现缓存WMS(Web Map Service)地图切片(Tile)的开源项目,它实现了各种服务接口以加速和优化地图图像6。当客户端请求一张新地图和Tile时,GeoWebCache服务器将会拦截来自客户端的请求,然后判断数据是否已经被缓存,如果已经被缓存,则将缓存的数据调用给客户端;如果找不到缓存再调用服务器上的Tiles,从而提高地图展示的速度,实现更好的用户体验。2.5 HTML+ OpenLayersHTML即超文本标记语言(HyperText Markup Language),是标准通用标记语言下的一个应用,也是一种标准,一种规范,它是通过标记符号来标记要显示的网页的各个部分。HTML通过结合使用其它的Web技术可以开发出强大的网页,HTML是Web编程的基础,而且Web也是建立在HTML的基础之上的。HTML的主要特点是:可扩展性、简易性、平台无关性、通用型。OpenLayers是一个可以用来开发WebGIS客户端的JavaScript包,用于实现通过标准格式发布的地图数据的访问。在OpenLayers在2.13版本中引入了Web Processing Services(WPS)标准,可以对空间数据进行地理分析,如缓冲区分析。本系统是以HTML为主体框架结合OpenLayers调用实现地图的显示。3 系统概要设计运用WebGIS开发的相关知识,并结合Java开发语言和PostgreSQL数据库管理工具,将数据库中的地图数据添加到网页当中,将其在网页上显示出来,并且提供了多种操作工具和查询方式,从而搭建出具有多种分析功能,便于管理的土地资源信息管理网站。整个系统是采用MVC框架的B/S设计模式,总体可分为客户端(浏览器)、服务器端、数据库端三个部分,各个部分分工执行并合理结合在一起,实现系统的整体功能。浏览器端采用HTML标记语言编写,提供用户操作界面和地图显示及管理员管理界面;服务器端是用于处理数据,通过Java语言处理客户端发送的请求,并结合数据库向客户端响应请求;数据库端则是用于存储用户信息和管理员信息及地图数据(地图数据是采用空间数据库进行管理的)。3.1 系统设计目标建立一个基于Java Web开发的土地资源共享平台,用户可以在网站上查询所需的土地资源信息,并可以在网上显示所选的专题地图和图斑的详细信息。3.2 系统运行流程在前端提供用户注册和登录及注销功能,用户注册时通过Java语言对用户密码进行加密,并储存在postgreSQL数据库用户列表,登录时调用数据库用户表进行验证。数据库中同时也存储着土地资源信息,在服务器上安装的GeoServer是用于调用数据库中的资源供前端网站系统使用,而Tomcat作为应用广泛的应用服务器则是用于承载GeoServer以及前端和后台之间的请求和响应,OpenLayers是用于渲染显示地图资源信息。3.3 需求分析3.3.1 功能分析(1)提供注册、登录与注销账户功能。(2)用户可以修改自己的个人信息及密码。(3)具有管理员系统,可以修改网站信息、用户权限管理等。(4)在网页上能加载地图供用户查看。(5)有基本的地图功能,包括缩放、平移、图标和比例尺等。(6)有基本的地图查询方式,包括点选和框选。(7)用户可以查询指定区域的土地详细信息。(8)用户可根据自身需求选择地图的渲染方式。(9)用户可根据自身需求显示不同区域的地图。3.3.2 系统运行环境操作系统:windows系统数据库:PostgreSQL数据库及pgAdmin数据库管理工具服务器:Tomcat7Java工具:jdk1.6、MyEclipse10系统运行软件:浏览器如IE浏览器、FireFox等4 系统功能分析与设计4.1 OGC标准服务介绍4.1.1 OGC规范OGC(Open GIS Consortium)即开放地理信息联盟,是一个国际化的规范体系,致力于制定地理信息共享和互操作规范。它的宗旨是在实现地理空间数据和地理信息处理资源的共享,允许用户通过网络实时获取不同的地理信息,是实现地理空间数据共享的一次技术革命。OWS(OGC Web services)是OGC提供的服务框架,框架包含了支持空间信息共享和互操作的服务、接口和标准的规范,主要包括:网络地图服务(WMS)、网络要素服务(WFS)、网络覆盖服务(WCS)和网络处理服务(WPS)等空间信息服务7,8。4.1.2 OGC相关服务介绍网络地图服务(WMS):利用具有地理空间位置信息的数据制作地图,其中将地图定义为地理数据可视的表现。在一个标准的WMS服务中提供三个服务接口:GetCapabilities(返回服务级的元数据)、GetMap(获取新的地图图像)和GetFeatureInfo(查询特定空间实体信息)9。网络要素服务(WFS):是地理空间数据共享和互操作的实现规范,用户可以通过网络获得原始的矢量数据,使得从客户端获取地图的原始数据结构和数据成为可能,它支持对地理要素的插入,更新,删除等操作。其基础接口是:GetCapabilities(返回服务级元数据),DescribeFeatureType(返回要素结构),GetFeature(返回符合GML规范的数据文档)。网络覆盖服务(WCS):是面向影响和数字工程模型数据,将包含有地理位置的地理空间数据作为覆盖,并在网络上进行发布。4.1.3 主流WebGIS服务器对比GeoServer和ArcGIS Server 作为当今应用及其广泛的两个WebGIS服务,尽管功能等各个方面都非常优秀,但在使用上仍然有其各自的优越性,GeoServer的主要特点是它的开源以及免费,相比较ArcGIS Server,在功能上略有些不足,但在广泛的开发人员中仍然是及其受欢迎的,而正因为它具有ArcGIS Server所不具有的开源和免费的特性,在本系统的开发中使用了GeoServer作为WebGIS服务器。GeoServer和ArcGIS Server的比较如下表4.1.1:表4.1.1 GeoServer和ArcGIS Server对比GeoServerArcGIS Server渲染方式GeoServer对发布的地图渲染是通过渲染每个图层来实现的,GeoServer只提供少量的渲染模式。ArcGIS Server对地图的渲染可以通过在软件中直接设置,选择程序提供的渲染模式,可选模式多,也可以自定义渲染模式。简便程度GeoServer发布服务需要先建立工作空间、建立数据存储器、发布图层,发布过程选择渲染方式、投影灯参数过程相比较复杂。ArcGIS Server发布服务可以直接通过程序完成,参数设置简单,流程简单。效率使用紧凑模式时时间相对较长,使用松散模式时,时间相对较短。使用紧凑模式时时间相对较短,使用松散模式时,时间相对较长,读取缓存文件是较慢。是否开源免费GeoServer属于开源、免费的软件。ArcGIS Server是商业软件,需购买,价格贵,不是开源的软件。4.1.4 服务平台设计平台总体框架,如图4.1.1所示: 图4.1.1 服务平台基本框架(1)用户层是由各个行业应用系统的空间信息资源所组成,包括管理人员和数据用户,数据用户通过Web浏览器访问共享数据,也可以通过支持开放服务的工具或软件系统访问地图服务11。(2)服务层是用户层的应用程序接口层,包括空间元数据服务和空间数据服务,空间元数据服务主要用于管理和维护空间数据,空间数据服务主要提供WMS、WFS、WCS等OGC服务。(3)数据层是原始空间数据资源,利用PostgreSQL创建管理数据库可以存储和管理各种空间数据的元数据和属性信息,以及其它符合OGC规范的服务。4.1.5 WFS服务接口介绍1、客户端访问WFS服务一般涉及的流程: 先通过WFS服务的接口操作获取WFS服务的要素类及支持的操作。 客户端发送请求。 WFS服务处理请求。 WFS服务返回结果和状态。2、WFS主要接口如下表4.1.2:表4.1.2WFS服务主要接口WFS服务主要接口接口描述GetCapabilities用于获取服务中的要素类以及支持,返回这个服务的元数据信息DescrbeFeatureType用于描述要素类的信息,返回要素结构GetFeature用于获取要素返回符合GML规范的数据文档GetGmlObject可以通过Xlink获取GML对象Transaction是对事物实现的一个抽象,是创建、更新和删除数据的事物操作LockFeature在事物过程中锁定要素4.1.6 WMS服务接口介绍WMS主要接口如下表4.1.3:表4.1.3WMS服务主要接口WMS服务主要接口接口描述GetCapabilities是获取WMS服务中的要素类及支持的操作,返回服务的元数据信息GetMap用于获取地图图像GetFeatureInfo用于获取更详细的要素信息,查询特定空间实体信息1、 GetCapabilities操作所需参数: 表4.1.4 GetCapabilities参数参数是否必须描述SERVICE=WMS是请求的类型是WMSREQUEST=GetCapabilities是请求的服务名为GetCapabilities服务VERSION是请求WMS的版本FORMAT否指定返回的地图图片的格式UPDATESEQUENCE否操作示例:0/wms?REQUEST=GetCapabilities&VERSION=1.1.1&SERVICE=WMS2、GetMap操作所需参数:表4.1.5 GetMap参数参数是否必须描述VERSION是请求的WMS版本REQUEST=GetMap是请求的服务名为GetMap服务LAYERS是请求的图层名字STYLES否指定每个图层的渲染样式CRS是指定地图投影BBOX是指定地图的包围框WIDTH是地图图片宽度HEGHT是地图图片高度FORMAT是指定GetMap返回的地图图片的格式TRANSPARENT否BGCOLOR否EXCEPTIONS否TIME否ELEVATION否操作示例0/wms?VERSION=1.1.1&REQUEST=GetMap&FORMAT=image/gif&WIDTH=560&HEIGHT=350&LAYERS=Temperature&CRS=CRS:84&BBOX=-110.0,40.0,-80.0,30.03、GetFeatureInfo操作所需参数:表4.1.6 GetFeatureInfo参数参数是否必须描述VERSION是请求的WMS版本REQUEST=GetFeatureInfo是请求的服务名GetFeatureInfoSERVICE=WMS是请求的服务类型为的WMS服务BBOX是当前地图的地图范围WIDTH是地图的宽度HEIGHT是地图的高度QUERY_LAYERS是图层列表INFO_FORMAT否X是X方向的像素坐标Y是Y方向的像素标FEATURE_COUNT否EXCEPTION否操作示例:0/wms?VERSION=1.1.1&SERVICE=WMS&REQUEST=GetFeatureInfo&QUERY_LAYERS=Temperature%INFO_FORMAT=text/html&BBOX=-117,38,-90,49&HEIGHT=300%WIDTH=300&STYLES=& X=200&Y=200&4.1.7 REST接口和SOAP接口SOAP(Simple Object Access Protocol)即简单对象访问协议,是用来描述传递消息的格式,是以XML为基础的传输协议,是传统Web服务的基础,可以和HTTP协议等英特网协议和格式结合使用,一条SOAP消息就是一个普通的XML文档,在WebGIS领域中,每个SOAP应用都需要定义自己的实现接口,这使得服务间的互操作难以实现。SOAP协议是交换数据的一种协议规范,不是专门为GIS设计的规范,没有考虑到GIS数据所具有的特性,所有SOAP协议很难再GIS服务领域中得到广泛的应用15。REST(Representational State Transfer)即表述性状态转移,它是一种组织Web服务的架构,并且提出了一系列的架构约束条件和原则。应用REST的Web服务相比较SOAP来讲显得更加简洁,REST就是以其轻量级服务、简洁方便等特点在WebGIS领域中被广泛应用。REST在Web领域方面影响非常大,已经普遍取代了基于SOAP的接口设计,成为近年来最主要的Web服务设计模式。当前主流的WebGIS服务器对REST风格的服务访问接口支持很好,因此,本系统利用GeoServer向客户端提供REST访问风格的OGC标准服务。REST与SOAP比较如表4.1.7:13表4.1.7REST与SOAP的比较RESTSOAP接口提供通用的操作,使用HTTP的4中方法GET、POST、PUT和DELETE。不指定传输数据的下层协议,不提供通用的操作,每个操作都要定义自己的方法。寻址模型REST为每个资源指定一个唯一的资源标识URI,资源与URI一一对应。SOAP不指定具体的资源,用一个唯一的URI标识服务的入口,URI只用于定位SOAP端点。安全性简单有效,可用现有的防火墙控制,在请求和响应过程中能对重要消息进行加密,保证消息不被修改。操作复杂,不能使用现有的防火墙控制。性能REST的面向接口设计以及操作的抽象化改善了开发者的不良设计,且能很好的融入Web2.0的前端开发技术使其具有简洁高效的特性。SOAP由于各种需求需要不断扩充本身协议的内容,使得在SOAP处理方面的性能降低。成熟度REST是基于HTTP协议实现资源操作,每个网站的REST实现都有自己,在统一通用方面远不及SOAP。SOAP在很多方面都得到很多厂商的支持,很多语言都对其有很好的支持,不同平台,开发语言之间能通过SOAP很好的交互,总体来说SOAP成熟度优于REST。4.2 耕地地理信息服务管理与发布4.2.1 系统地理数据组成本系统数据库设计了地理数据表,主要属性有内部标识码、县地力等级、部地力等级、有机质分区、碱解氮分区、有效磷分区、交换性钙分、交换性镁分、有效硫分区、有效锌分区、有效硼分区、有效钾分区、乡名称、县名称、省名称和行政区代码。如下表所示:表4.2.1 系统地理数据组成字段名字段说明数据类型长度其他约束neibubiaoshima内部标识码integer4uniquexiandilidengji县地力等级numeric8budilidengji部地力等级numeric8youjizhifenqu有机质分区character20danjiedanfenqu碱解氮分区character20youxiaolinfenqu有效磷分区character20jiaohuanxinggaifen交换性钙分character20jiaohuanxingmeifen交换性镁分character20youxiaoliufenqu有效硫分区character20youxiaoxinfenqu有效锌分区character20youxiaopengfenqu有效硼分区character20suxiaojiafenqu有效钾分区character20xiang乡名称character20xian县名称character20sheng省名称character20xingzhengqudaima行政区代码character144.2.2 GeoServer 服务管理与发布(1)基于GeoServer的WebGIS体系结构系统可以分为四层B/S体系结构(包如下图4.2.1所示):括显示层(客户端浏览器)、Web服务层(Tomcat7)、GIS服务层(GeoServer)、数据层(PostGIS、PostgreSQL)14。显示层是由客户端浏览器负责与用户交互以及数据的显示;Web服务层负责网页的发布以及编写基于Java语言的servlet框架,实现客户端与数据库的交互;GIS服务层负责处理GIS的请求以及实现GIS的基本功能,需要通过GeoServer发布和管理地图服务;数据层包括PostGIS和Postgresql数据库,负责空间数据的存储和管理,以及用户表的存储。图4.2.1 基于GeoServer的WebGIS体系结构(2)系统工作流程当用户通过浏览器访问系统中的地图时,客户端会向Web服务器发送相关数据和请求,Web服务器从数据库中提取出相关数据,并通过地图服务器生成所需的地图返回给客户端,客户端将地图通过HTML页面的形式显示出来。(3)GeoServer服务的发布系统中所用到的地图服务器是GeoServer,利用GeoServer可以方便的发布地图数据,用户可以对数据进行更新、删除、插入等操作,方便用户之间共享空间地理数据。GeoServer发布前,要做一些准备工作,连接GeoServer与空间数据库,在Postgresql数据库中要先添加PostGIS插件,才能将空间数据存储在数据库中,再通过uDig设计sld样式,接下来开始发布服务。GeoServer只能发布ArcGIS格式(即.shp)的地图数据,因此在使用GeoServer部署地图数据之前需要对不同格式的数据进行格式转化。使用uDig提取样式文件:首先使用uDig编辑shp格式的数据,通过uDig工具可以对地图数据进行编辑、查看等操作,通过编辑shp格式的数据并从中提取出样式文件(.sld),目的就是为了修改编码。在发布地图数据的时候可以使用sld样式到对应的图层,解决中文标签乱码问题。部署地图数据:将地图数据文件复制到GeoServer的数据目录下,在此目录下,GeoServer才能在后台发现shp格式的地图数据文件。GeoServer发布地图服务:GeoServer是部署在Tomcat目录下的Webapps下,被作为一个应用部署。启动GeoServer,登录后进入GeoServer首页。 创建工作空间:先通过Add new workspace进入工作空间创建界面,根据要求创建一个新的工作空间。 建立数据存储器:通过Add new store选择对应的数据类型,建立数据存储器。 通过图层界面的Add a new resource进入图层类型选择界面,选择对应图层存储器类型,会显示该图层类型下的所有图层元素。图层列表管理和维护着地图数据图层的发布。 在GeoServer的样式列表界面的Add a new style进入样式发布界面,发布在uDig中对地图数据样式进行编辑并导出的样式文件(.sld)。 在图层发布或编辑图层的时候通过Default style应用自己发布的样式。地图数据发布成功后,可以在Layer Preview中看到图层,在图层预览界面可以对已经发布的图层重新发布或者对没有分布的图层进行发布。4.2.3 GeoServer WMS SLD地图配图(1)SLD简介SLD(Style Layer Descriptor):图层样式描述,是一种描述地图图层样式的、基于XML语言的OGC标准,一般用于WMS,它描述了如何在WMS规范的基础上进行扩展使之支持用户对要素数据进行自定义的符号化显示。在没有SLD之前,只能使用一些已经在服务器上规定好的样式对地图进行可视化,当实现了SLD标准后,我们可以对地图进行定义自己的样式,极大提高了地图可视化的灵活性12。(2)通过uDig配置生成sld文件uDig提供了非常强大的地图数据编辑功能,通过uDig编辑shp格式的地图数据,可以从中提取出样式文件,通过对图层右键菜单的Change Style可以进入图层的样式编辑器,将修改后的样式导出为sld样式文件,发布地图数据时应用对应的地图图层样式,可以解决中文标签乱码问题。(3)SLD样式文档SLD文档的元素架构如下图4.2.2所示:12 图4.2.2 SLD文档元素结构一个SLD样式文档包含几个重要的部分:FeatureTypeStyle:这是样式文档的根节点。Rule:即规则,是根据属性和比例尺对要素进行渲染Symbolizer:指定数据的可视化方式,包含点符号、线符号、面符号、注记和栅格。(4)GeoServer配图首先发布地图样式,将从uDig工具中导出的sld文件通过GeoServer发布,并在发布图层时应用自己发布的样式。专题地图切换功能的实现就是依靠在GeoServer中应用改变图层所使用的SLD样式改变专题图类型。4.3 系统功能设计在该系统中,总体可以分为两部分设计,一部分是系统的前端页面设计,另一部分是功能及后台的实现,以下就以部分功能的实现作简要的介绍和分析。4.3.1 用户登录(1)页面 图4.3.1登录界面(2) 功能表4.3.1 登录功能功能名称登录功能描述允许用户通过已注册的用户名和密码登录进入系统登录流程1、用户进入系统登录界面时,要求用户通过用户名和密码;2、用户输入的用户名和密码要通过数据库验证;3、数据库先验证用户名在数据库中的usertable(用户表)表或admintable(管理员表)表是否存在;4、若存在则再进行判断数据库中对应的密码是否正确,若正确则登录成功进入首页,否则弹出窗口提示“账户不存在或密码错误!”,点击确定后返回登录界面重新登录;5、在数据库中用户名的验证是优先在admintable里执行的,其次才在usertable,6、若是先在admintable表里验证通过,登录成功后则是进入管理员界面,反之在usertable表里验证通过,登录成功后进入普通用户界面4.3.2 用户注册(1)页面图4.3.2 注册界面(2)功能表4.3.2 注册功能功能名称注册功能说明允许进入网站的新用户注册用户名唯一的账户注册流程1、新用户进入系统注册界面时,用户按要求进行注册2、用户输入的用户名和密码要符合条件,使用正则表达式设定用户名只能是数字、字母或下划线,长度4到16位,密码也只能是数字、字母或下划线,长度6到16位3、用户名要通过数据库进行验证是否唯一,首先是先在admintable表里进行验证,确认不存在后再通usertable表进行验证4、若在admintable表验证用户名已存在,则直接退出下一步验证弹出“该用户名已存在!”提示,否则进入usertable表再验证,若不通过弹出相同提示5、若在admintable表和usertable表都通过验证则弹出提示“注册成功”6、在注册过程中,传入的用户名是经过MD5进行加密后得到一串32位十六进制的字符串,再将32位的字符串存入数据库中4.3.3 用户注销在用户登录进入系统的同时,也将用户名和密码写入到系统当前的session中,在系统的所有页面之间的跳转都有将当前登录用户的session写进去,在注销之前,用户可以任意跳转和返回表4.3.3 注销功能功能名称注销功能描述用户在登录状态下实现退出登录注销流程1、用户登录进入系统时将用户名和密码保存在当前系统的session(会话)当中,每一个页面跳转都需要通过session的验证才行2、注销则是通过将系统中的session清空来实现的3、session清空后,直接跳转到登录界面4.3.4 用户修改个人信息(1)页面图4.3.3 修改信息界面(2)功能表4.3.4 修改信息功能功能名称用户修改个人信息功能描述用户在登录成功后可以在后台管理界面对自己的个人信息进行修改功能流程1、用户进入后台管理界面的信息编辑中修改当前登录的用户的基本信息2、对每个信息的内容用正则表达式进行规定:首先要求信息中不能存在空格;年龄规定只能是1到3位数的数字;联系方式可输入无区号的7位或8位,或者加上3位或4位的区号,手机号只能是1开头的11位数字;邮编必须有符号,符号前的第一位只能是数字或字母,其它可以是数字字母下划线,符号后第一段可以是数字字母下划线,然后便是一个符号点,点符号后是2到3位字母3、用户输入信息后对每个内容进行验证,那个不符合则最后会弹出提示信息提示某格式不符,然后返回编辑信息界面重新编辑4、信息完全无误后会将修改后的信息存入数据库中的usertable对应的用户中,如果原先已经存在信息则会替换原先的信息5、存入数据库中的信息回以json的数据格式返回出来并显示在对应的修改框中4.3.5 用户修改密码(1)页面图4.3.4 改密码界面(2)功能表4.3.5 修改密码功能功能名称用户修改密码功能描述用户在修改密码界面可以修改自己的登录密码功能流程1、用户登录后进入系统,在后台的修改密码界面修改密码2、用户需要输入当前登录的用户名所对应的密码,修改后的密码并确认密码3、用户在跳转到更改密码时,需要传入session中的用户名和密码到当前页面中,进行验证,若用户名和密码无误,再将新密码在数据库中替换掉原先的密码,完成修改4、新密码依旧通

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论