基于Web AppBuilder的县级森林资源管理系统构建
张京 徐雁南
摘 要:为满足林业信息化和森林资源管理“一张图”常态化更新的需要,本文基于Web AppBuilder框架,以ArcGIS Enterprise为平台,通过即用型微件和自定义微件构建江苏省东台市县级森林资源管理系统,提供用户管理、地图操作、数据查询、数据编辑、数据管理和统计分析等功能,基本实现林业信息的可视化表达、数字化管理和网络化共享,为森林资源数据的动态更新提供系统平台。实践证明,该县级森林资源管理系统具有交互好、响应快和界面友好的特点,通过Web AppBuilder可以降低Web GIS应用的开发门槛,极大提高开发效率。
关键词:Web AppBuilder;林业信息化;动态更新;森林资源管理系统;县级
Abstract:In order to meet the needs of forestry informatization and the "One Map" of forest resource management normalized update, this article is based on the Web AppBuilder framework and uses ArcGIS Enterprise as a platform to build a county-level forest resource management system in Dongtai City, Jiangsu Province through ready-to-use widgets and custom widgets. It provides user management, map operations, data query, data editing, data management, statistical analysis and other functions. It basically realizes the visualization, the digital management and the network sharing of forestry information, and provides a system platform for dynamic update of forest resource data. Proved by practice, the county-level forest resource management system has the characteristics of good interaction, fast response, and friendly interface. The Web AppBuilder can reduce the development threshold of Web GIS applications and greatly improve the development efficiency.
Keywords:Web AppBuilder; forestry informatization; dynamic update; forest resource management system; county level
0 引言
东台市位于江苏省中部,盐城市最南端,区域总面积为3 175.67 km2,地势平坦,属亚热带季风海洋性气候,截至2018年,全市林木覆盖率为27.8%,森林资源总体特点是林地面积较少,地区分布不均,树种结构单一[1]。随着互联网和计算机技术的快速发展,林业与地理信息技术的结合越来越密切,各级林业部门对森林资源信息化管理的需求也日益增高,为保障实现国家、省、县森林资源“一张图”、“一套数”、“一个体系”监测和“一个平台”管理,及时掌握森林资源的现状和变化情况,县级森林资源管理系统的构建变得尤为重要[2-4]。县级森林资源管理系统是现代化森林资源经营管理的重要工具, 是“数字林业”在县级采集标准规范数据的一种必要工具,建立功能齐备、互通共享、高效便捷和稳定安全的县级森林资源管理系统是林业现代化的基础和保障[5-7]。
传统的县级森林资源管理系统主要有两种模式。一种是基于客户机/服务器(C/S)模式:何涛等[8]利用ArcGIS Engine和SQL Server 2005数据库在.NET平台上开发了具有森林资源数据展示、图像管理和报表统计功能的通用型县级林业资源管理信息系统;杨海明[9]以仁寿县为研究区域,基于C/S模式,利用ArcGIS Engine组件、ArcSDE空间数据引擎和数据库技术使用C++语言开发了一套具有森林火灾管理、森林病虫害管理和森林经营管理等多种功能于一体的仁寿县森林资源信息管理系统。另一种是基于浏览器/服务器(B/S)模式:刘菊[10]利用计算机网络、中间件和组件技术,设计了基于ASP技术和MS Access数据库为后台的伊春市森林资源管理系统,实现林业数据报表和数据库合并、备份等功能;袁野[11]设计了基于ArcGIS Server和Flex的森林资源与生态状况管理系统,该系统可以查询研究区内的林木状况,预估未来小班蓄积量、林分密度指数等信息,实现森林资源的可视化管理;徐艳等[12]以Geodatabase为空间数据库,利用ArcIMS定制开发了滁州市管店林场森林资源管理信息平台,实现森林资源空间属性管理和统计等功能,为预测森林资源动态变化提供技术和决策支持。客户机/服务器(C/S)和浏览器/服务器(B/S)各有优劣,C/S模式数据通信量小、运行速度快、安全性较高,但其部署较为复杂,数据共享困难;B/S模式开发维护简单、可移植性强、可跨平台操作,但当数据量过大时可能出现服务器因过载而导致无法使用的情况[13]。
美国环境系统研究所公司(ESRI公司)于2015年推出Web AppBuilder for ArcGIS(Web AppBuilder),该应用框架可以根据需求快速搭建一个定制的跨平台Web应用程序,黄植钦等[14]基于Web AppBuilder框架,以华南师范大学校园为研究区域,构建了一个Web端的虚拟校园系统,实现校园全景漫游和地图信息服务等功能;许金霞等[15]基于Web AppBuilder框架构建了团场棉田病虫害信息服务平台,实现棉花病虫害信息的及时分析、统计、发布和共享。本文以江蘇省东台市森林资源数据为基础,基于Web AppBuilder框架,利用ArcGIS Enterprise平台,通过即用型微件和自定义微件构建江苏省东台市县级森林资源管理系统,通过可视化县级森林资源“一张图”信息,为森林资源经营管理决策提供支持和服务。
1 需求与可行性分析
1.1 用户需求
为了满足县级森林资源管理和“一张图”年度更新工作的要求,县级森林资源管理系统将用户类型分为3类,即林业主管部门、林区管理机构和外业调查用户,根据不同用户的需求将系统的使用权限分为浏览权限、管理权限和编辑权限。林业主管部门主要负责了解辖区内森林资源的总量和消长量等信息,审核相关成果,掌握全林区的总体情况;林区管理机构负责森林资源数据的记录和管理,建立林分生长模型并测算森林蓄积变化,进行森林资源动态更新;外业调查用户主要负责对森林资源进行实地调查,并对图像数据进行采集、更新和提交。
1.2 功能需求
(1)县级森林资源数据展示。系统通过县级森林资源管理“一张图”可以展示森林资源的空间分布,提供林业专题图和统计报表的展示,可以查询和显示小班的属性信息等功能,为林业相关部门提供基础数据支撑。
(2)县级森林资源数据管理。建立基于地理信息系统的森林资源档案动态管理,针对多样化的森林资源数据按照信息管理系统的统一格式建立不同的数据库。在现有县级林地“一张图”的基础上,完善森林资源、国家级公益林等信息,整合形成县级森林资源管理“一张图”数据库,采用图属一体化的方式进行存储管理。
(3)县级森林资源数据更新。主要采用遥感影像判读、森林资源档案核实和现地核实等方法,严格执行相关技术规定和操作细则,将核实或调查的森林资源现状及变化情况实时更新到县级森林资源管理系统中,从而保持县级森林资源管理“一张图”的常态化更新。
(4)县级森林资源数据共享。利用网络和系统支持,推进构建县级森林资源管理信息平台,实现森林资源数据的高效共享,便于森林资源档案的收集整理和县级森林资源“一张图”的常态化和动态化管理,形成分级负责、上下联动、齐抓共管的森林资源監管机制。
1.3 可行性分析
以江苏省东台市森林资源调查数据和林地“一张图”为数据支持,同时为了遵循林业资源相关数据建库标准及更新体系、组织保障与安全保障体系,系统平台选用ArcGIS Enterprise,以此平台构建的森林资源管理系统可以部署在政府和企事业机构内部的服务器上,由相关机构自己进行管理,保证了数据传输的可靠性和安全性。通过Web AppBuilder和Widget创建界面友好、功能丰富的Web应用程序,可以实现跨平台的县级森林资源展示、管理、更新和共享等功能。
2 关键技术
2.1 Web AppBuilder
Web AppBuilder for ArcGIS(Web AppBuilder)是一种所见即所得式的应用程序,可以通过Web AppBuilder快速构建2D和3D Web应用程序[16],Web AppBuilder使用 HTML5和ArcGIS API for JavaScript技术,支持多种数据源和数据类型,通过Web AppBuilder可以聚合不同企事业机构、不同服务器上的要素服务、地图服务和影像服务等。
Web AppBuilder的主要功能有:创建能够在所有设备上运行的HTML/JavaScript应用程序;利用多种多样的即用型微件构建所需的应用程序;可以使用不同的主题并自定义配置应用程序的外观和样式;能够在线托管应用程序或在自己的服务器上运行应用程序;提供可扩展的开发框架,开发者可以根据自己的需要定制微件、主题和应用程序。
Web AppBuilder在逻辑结构上分为5个核心对象[14]:配置管理对象(ConfigManager)、数据管理对象(DataManager)、布局管理对象(LayoutManager)、地图管理对象(MapManager)和功能部件管理对象(WidgetManager)。Web AppBuilder目前有ArcGIS Online嵌入版、Portal for ArcGIS嵌入版和开发者版共3个版本,其中开发者版支持开发人员根据需要创建和使用自定义主题和微件。
2.2 ArcGIS Enterprise
ArcGIS Enterprise是ESRI公司推出的新一代ArcGIS服务器产品,它提供了强大的空间数据管理、分析、制图可视化与共享协作能力[17],主要用于私有云和混合部署模式的Web GIS,是运行在组织内部基础设备上的Web GIS平台。
ArcGIS Enterprise主要包含4个部分:①ArcGIS Server,是ArcGIS Enterprise的后端服务器软件组件,也是ArcGIS Enterprise的核心组件,主要功能是发布服务,共享地图、数据和工具等资源,以供组织内的其他人员使用;②Portal for ArcGIS,是Web GIS的门户,用户可以通过门户创建、共享和管理数据,从而实现数据的多维管理和协作共享;③ArcGIS Data Store,是新一代Web GIS系统的数据存储组件,包含关系数据存储、切片缓存数据存储和时空大数据存储3种类型,可用于设置托管服务器所使用的不同类型的数据存储;④ArcGIS Web Adaptor,可以将ArcGIS Server和Portal for ArcGIS与组织现有的Web服务器相互连接,并能与组织的安全机制相集成。
2.3 Widget
Widget即微件,是一组封装好的具有专门功能的HTML/JavaScript组件,通常包含模块UI文件、配置文件、样式文件和国际化支持文件等,微件通过特定的逻辑功能可以与用户进行交互操作。Web AppBuilder中包含许多即用型微件,通过这些微件可以快速便捷地创建基础的Web应用程序。
微件一般情况下分为面板内微件和无面板微件。面板内微件提供面板以供用户进行交互,例如查询微件(Query);无面板微件不在面板内显示,可单独操作开关,位置独立灵活,例如比例尺微件(Scalebar)。
通过Web AppBuilder开发者版提供的微件框架,可以根据所需要的功能自定义开发新的微件或修改现有的微件。自定义微件通常包含以下文件:widget.js,微件的主文件,定义各种功能和业务逻辑;widget.html,定义模块UI文件;config.json,微件配置文件;manifest.json,微件清单文件;string.js,国际化支持文件;style.css,微件样式文件;icon.png,微件图标文件。自定义微件可以方便地共享、移动和部署到Web AppBuilder应用程序中。
3 系统设计
3.1 总体架构
县级森林资源管理系统采用浏览器/服务器(B/S)模式,以江苏省东台市森林资源数据为数据源,构建系统总体框架如图1所示,4层结构由下至上依次为基础层、数据层、服务层和应用层。
基礎层即基础设施层,主要提供支持县级森林资源管理系统运行的计算环境、存储环境、运行环境和网络环境,包括CPU、硬盘、操作系统、基础软件和数据库等。
数据层即数据资源层,ArcGIS Enterprise中提供ArcGIS Data Store组件,通过此组件可以根据不同类型的数据进行灵活存储,县级森林资源管理系统所需数据主要包括基础地理数据、森林资源基础数据、森林资源专题数据、遥感影像以及其他相关数据。
服务层主要采用ArcGIS Server,它是ArcGIS Enterprise的后端服务器软件组件,通过ArcGIS Server可以便捷地发布和使用多种地理服务。
应用层即客户端表现层,通过ArcGIS Enterprise中设定的用户类型,给予不同的功能和操作权限,基于Web AppBuilder、ArcGIS API for JavaScript和Widget构建可视化县级森林资源管理系统。
3.2 功能设计
县级森林资源管理系统主要服务于林业主管部门、林区管理机构和外业调查用户,系统功能依据不同的用户需求分为浏览权限、管理权限和编辑权限。浏览权限可以实现森林资源空间信息和属性信息的查询和查看,完成基本的地图操作,进行森林资源数据的统计分析,实现专题图、统计报表的展示和打印输出功能;管理权限可以进行森林资源数据和历史档案数据的管理,同时负责数据的导入、导出和更新等维护工作;编辑权限可以对图层的空间信息和属性信息进行修改编辑,保证了森林资源数据的真实性、准确性和时效性。通过对不同用户开放不同权限,既可以保证数据的安全性和稳定性,也可以提高各级部门之间的协同合作能力。系统功能设计如图2所示。
3.3 自定义开发
在系统构建的过程中,当Web AppBuilder提供的即用型微件无法满足需求时,可以通过自定义开发来实现所需的功能,本文以创建自定义面板内微件为例,实现林场简介展示功能。
在微件目录下找到CustomWidgetTemplate文件夹,复制并重命名,在Widget.js文件中定义BaseWidget类并定义baseClass名称,在微件的Widget.html文件中编写所需显示的内容,微件通过Widget.js和Widget.html两个文件实现了业务与视图的分离,提高了微件的安全稳定性。将配置好的文件拷贝到webappbuilder\client\stemapp\widget文件夹下,重新启动Web AppBuilder,即可加载自定义微件。
为了提高微件的易用性,可以通过修改css\style.css使微件有不同的显示效果;可以在config.json中配置文本并通过Widget.html传递到微件中;可以通过修改string.js来进行国际化支持;当需要与地图交互时也可以通过代码来实现。
4 系统实现
4.1 数据介绍与处理
本文县级森林资源管理系统选用江苏省东台市为研究区,数据来源主要包括东台市卫星遥感影像、东台林场无人机高分影像、2009年东台市森林资源二类调查数据和2016年东台林场小班及其样地调查数据。
参照有关技术规程,收集整理的多源数据在入库前需进行相应处理,对于研究区的遥感数据进行质量和精度处理,数据处理要求应符合国家统一标准;对样地调查数据等纸质文档进行电子化处理,将调查数据矢量化并转录相关信息,形成调查工作图;对于电子档案资料,利用投影变换和坐标转换处理形成电子档案资料数据库;森林资源二类调查数据和补充调查数据分别建立对应的图属一体化数据库。将数据以shp、gdb等格式进行存储,通过ArcGIS Server将数据发布为服务,在ArcGIS Enterprise门户中进行统一管理使用。
4.2 功能实现
基于Web AppBuilder框架,以ArcGIS Enterprise为平台,通过即用型微件和自定义微件构建了县级森林资源管理系统,系统主界面如图3所示,主要实现了用户管理、地图操作、数据查询、数据编辑、数据管理和统计分析等核心功能。
(1)用户管理。用户在进入县级森林资源管理系统前需进行登录操作,根据用户使用系统的需求不同,利用ArcGIS Enterprise中给定的用户等级和实际情况的需要划定用户的使用权限,使用权限分为浏览权限、管理权限和编辑权限。
(2)地图操作。主要是指地图浏览和地图测量等基本操作,在县级森林资源管理系统中可以通过鼠标或按钮实现地图的放大、缩小、平移和全局显示等功能,在系统界面可以实时显示当前坐标和比例尺,测量微件可以实现对地图中的图层进行长度和面积的量测,打印微件通过调用打印服务可以输出当前地图,通过微件还可以实现书签、卷帘和更换底图等功能。
(3)数据查询。查询功能主要分为属性到空间和空间到属性两种模式,在搜索栏中输入小班号即可在地图中找到对应小班;单击地图中的小班即可查看面积、平均胸径、龄组和优势树种等相关属性信息。利用微件还可以实现特定条件的查询,通过多字段的逻辑关系运算可以查询例如东台林场中林木平均胸径大于5 cm的小班或林场中哪些小班的土地利用情况发生变化等信息。
(4)数据编辑。森林资源的图形编辑和属性编辑在林地调查中应用十分广泛,对于空间数据的变更主要包括图斑界线数据、境界、权属界和线状地物等,属性数据的变更主要是图斑属性信息。当通过遥感影像或外业调查发现图斑信息发生改变时,需要及时变更图层的图形信息和属性信息,常见的图形编辑有面分割、合并、分解、公共边修改和节点编辑,属性信息通过修改图层的属性表来进行更新。
(5)数据管理。管理员可以在系统门户中根据系统需要并结合当前森林资源管理的现状,高效地管理森林资源数据,系统主要包括统计报表、专题图和林地数据库等文件。统计报表和专题图可以更好地展示森林资源的现状和动态变化,森林资源的矢量数据和属性数据都保存在林地数据库中,通常为shp或gdb格式存储。除此之外,管理者还可以对遥感影像、无人机影像等相关数据进行灵活的存储、管理和使用。
(6)統计分析。统计功能的数据来源于图层的属性信息,通过图表可以直观展示林场或林班的整体状况,常用的统计报表有林木蓄积量统计、商品用材林统计等。用户通过对森林资源数据进行对比分析,可以更好地掌握森林资源的动态变化情况,对当前的森林资源状况有更加深入的了解,能够对未来的发展变化进行预计,这为对森林资源的科学决策提供了依据。
5 结束语
本文在江苏省东台市县级森林资源调查数据的基础上,基于Web AppBuilder框架,以ArcGIS Enterprise为平台,通过即用型微件和自定义微件构建了县级森林资源管理系统,提供用户管理、地图操作、数据查询、数据编辑、数据管理和统计分析等核心功能,基本实现了林业信息的可视化表达、数字化管理和网络化共享,为森林资源管理“一张图”年度更新工作提供了快捷友好的服务管理平台。通过实践证明,Web AppBuilder构建的应用程序具有交互好、响应快和界面友好的特点,通过Web AppBuilder可以降低Web GIS应用的开发门槛,极大提高开发效率,更好更快地将网络信息化技术应用于林业工作中。
【参 考 文 献】
[1]陈礼森,王华,沈亚明.东台市林地保护利用现状及对策[J].绿色科技,2013,4(9):43-44.
CHEN L S, WANG H, SHEN Y M. Status and countermeasures of forest land protection and utilization in Dongtai City[J]. Journal of Green Science and Technology, 2013, 4(9): 43-44.
[2]郭旭,刘兆刚.基于ArcGISEngine帽儿山森林多资源管理系统的研建与实现[J].森林工程,2011,27(2):23-27.
GUO X, LIU Z G. Research and implementation of multi-resource management system in Maoershan forestry farm based on ArcGIS engine[J]. Forest Engineering, 2011, 27(2): 23-27.
[3]李超,罗传文.基于ArcGIS Engine的森林资源管理系统的设计与实现[J].森林工程,2013,29(1):15-20.
LI C, LUO C W. Design and implementation of a forest resources management system based on ArcGIS engine[J]. Forest Engineering, 2013, 29(1): 15-20.
[4]洪玲霞,陆元昌,雷相东,等.县级森林资源信息管理系统设计[J].林业科学研究,2005,18(3):284-291.
HONG L X, LU Y C, LEI X D, et al. Design of information system for forest resource management on county level[J]. Forest Research, 2005, 18(3): 284-291.
[5]钟晶鸣.县级森林资源管理信息系统若干问题的研究[D].北京:北京林业大学,2006.
ZHONG J M. Study on several issues of country forest resources management information system[D]. Beijing: Beijing Forestry University, 2006.
[6]刘澜,唐晓岚,熊 星,等.基于GIS的苏南乡村自然景观的生态敏感性分析[J].南京林业大学学报(自然科学版),2018,42(4):159-164.
LIU L,TANG X L,XIONG X,et al.Ecological sensitivity analysis of rural natural landscape in the south of Jiangsu Province based on GIS[J].Journal of Nanjing Forestry University(Natural Science Edition),2018,42(4):159-164.
[7]赵怡康,史大林,李春光.林业信息系统安全等级保护初探[J].信息化建设,2012,15(3):53-54.
ZHAO Y K, SHI D L, LI C G. Preliminary study on security level protection of forestry information system[J]. Informatization Construction, 2012, 15(3): 53-54.
[8]何涛,张世禄.基于ArcGIS的县级林业资源管理信息系统研究[J].计算机技术与发展,2009,19(2):183-186.
HE T, ZHANG S L. Research on county forest resource MIS based on ArcGIS[J]. Computer Technology and Development, 2009, 19(2): 183-186.
[9]杨海明.基于ArcGISEngine的仁寿县森林资源信息管理系统的研究与实现[D].重庆:西南大学,2007.
YANG H M. Study and implementation of ArcGIS engine based Renshou forest resource information management system[D]. Chongqing: Southwest University, 2007.
[10]刘菊.基于B/S的伊春市森林资源管理系统的设计与实现[D].哈尔滨:东北林业大学,2008.
LIU J. The design and realization of Yi Chun City forest resource management system of based on B/S structure[D]. Harbin: Northeast Forestry University, 2008.
[11]袁野.基于ArcGIS Server和Flex的森林资源与生态状况管理系统[D].哈尔滨:东北林业大学,2015.
YUAN Y. Forest resources and ecological status management system based on Flex and ArcGIS Server[D]. Harbin: Northeast Forestry University, 2015.
[12]徐艳,尹黎明,潘剑君.基于WebGIS的森林资源管理信息系统的设计与实现:以安徽滁州管店林场为例[J].安徽农业科学,2015,43(21):361-363.
XU Y, YIN L M, PAN J J. The design and realization of forest resources management information system based on webGIS[J]. Journal of Anhui Agricultural Sciences, 2015, 43(21): 361-363.
[13]王维,周丽芳.基于B/S与C/S架构下的森林资源管理系统研究[J/OL].林业科技通讯:1-4.https://doi.org/10.13456/j.cnki.lykt.2019.04.09.0001.
WANG W, ZHOU L F. Research on forest resource management system of Southwest University based on B/S and C/S[J/OL]. Forest Science and Technology: 1-4. https://doi.org/10.13456/j.cnki.lykt.2019.04.09.0001.
[14]黃植钦,舒娱琴,闫文豪.基于Web AppBuilder的虚拟校园系统设计与实现:以华南师范大学为例[J].华南师范大学学报(自然科学版),2017,49(4):122-128.
HUANG Z Q, SHU Y Q, YAN W H. Design and implementation of the virtual campus system based on web AppBuilder: a case study of South China normal university[J]. Journal of South China Normal University (Natural Science Edition), 2017, 49(4): 122-128.
[15]许金霞,赵庆展,张清,等.基于Web AppBuilder的棉田病虫害信息服务平台构建[J].河南农业科学,2016,45(8):155-160.
XU J X, ZHAO Q Z, ZHANG Q, et al. Construction of information services platform for diseases and insect pests in cotton field based on web app builder[J]. Journal of Henan Agricultural Sciences, 2016, 45(8): 155-160.
[16]ESRI公司.Web AppBuilder for ArcGIS[EB/OL].(2019-12-01)[2020-01-02]https://developers.arcgis.com/web-appbuilder/guide/xt-welcome.htm.
Environmental Systems Research Institute. Web AppBuilder for ArcGIS[EB/OL]. (2019-12-01)[2020-01-02]https://developers.arcgis.com/web-appbuilder/guide/xt-welcome.htm.
[17]郭宇柏.谈企业级GIS产品ArcGIS Enterprise的应用[J].山西建筑,2019,45(21):152-153.
GUO Y B. Talking about the application of ArcGIS Enterprise product[J]. Shanxi Architecture, 2019, 45(21): 152-153.