CN106599087A - 一种空间信息服务的二次开发方法 - Google Patents

一种空间信息服务的二次开发方法 Download PDF

Info

Publication number
CN106599087A
CN106599087A CN201611049714.7A CN201611049714A CN106599087A CN 106599087 A CN106599087 A CN 106599087A CN 201611049714 A CN201611049714 A CN 201611049714A CN 106599087 A CN106599087 A CN 106599087A
Authority
CN
China
Prior art keywords
service
information
script
development
panel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201611049714.7A
Other languages
English (en)
Other versions
CN106599087B (zh
Inventor
陈文康
李江伟
赵光俊
王汝英
李欣荣
刘万龙
张海涛
胡晓楠
高勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
TIANJIN PUXUN POWER INFORMATION TECHNOLOGY Co Ltd
State Grid Information and Telecommunication Co Ltd
Original Assignee
TIANJIN PUXUN POWER INFORMATION TECHNOLOGY Co Ltd
State Grid Information and Telecommunication Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by TIANJIN PUXUN POWER INFORMATION TECHNOLOGY Co Ltd, State Grid Information and Telecommunication Co Ltd filed Critical TIANJIN PUXUN POWER INFORMATION TECHNOLOGY Co Ltd
Priority to CN201611049714.7A priority Critical patent/CN106599087B/zh
Publication of CN106599087A publication Critical patent/CN106599087A/zh
Application granted granted Critical
Publication of CN106599087B publication Critical patent/CN106599087B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Remote Sensing (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及一种空间信息服务的二次开发方法,该开发方法在Web开发环境管理并维护所开发的空间信息服务代码,在开发和调试过程中需要适配作为底层支撑的基础地理信息***设施,包括文件组件、接口服务和数据对象,与部署环境相结合,形成一个完整的空间信息服务二次开发和调试发布环境。本发明可以简化空间信息服务的开发过程,提供统一的基于Web的开发环境,同时在后台适配多种地理信息***平台的功能组件和服务接口,减少了开发环境搭建和配置环节,提高了服务开发的效率,同时可结合容器技术进行服务发布过程。

Description

一种空间信息服务的二次开发方法
技术领域
本发明属于IT信息行业中软件开发技术领域,特别是一种空间信息服务的二次开发方法。
背景技术
传统的空间信息服务开发方法是基于已有的地理信息***提供的功能组件开发接口或服务接口,采用常规本地安装的集成开发环境进行。除需在本地安装或导入地理信息***组件库外,还需要安装相应的开发环境,配置过程繁琐复杂,对研发人员水平要求较高,影响快速开发。如何寻找一种简化开发过程的方法,降低开发复杂程度,使开发人员只关注功能实现过程。基于以上背景,目前如何寻找一种标准的开发方法,提供统一的基于Web的开发环境,通过可视化拖拽方式并结合较少的脚本编写过程,即可产生新的空间信息服务,尚没有完美的解决方案,本发明就是为了解决标准开发方法和统一的开发环境问题。
通过对国内公开专利及其它文献的检索,没有发现与本发明方法相近似的公开专利及文献。
发明内容
本发明的目的在于打破传统研发技术手段,提供一种空间信息服务的二次开发方法。
本发明解决其技术问题是采取以下技术方案实现的:
一种空间信息服务的二次开发方法,其特征在于包括步骤如下:
(1)开发人员登陆Web开发环境;其中包括:
①开发人员在浏览器中输入开发环境地址信息,进入登录页面;
②在登录界面中输入账号、密码验证信息,进入开发环境主页面;
③开发环境根据开发人员输入的登录信息,进行后台的初始化过程;
(2)新建空间信息服务工程;其中包括;
①输入新建工程信息,以及至少一个新服务的名称,命名需遵循相应的命名规则;
②指定服务的类型;
③指定服务的输入参数和返回参数信息,包括参数名、数据类型内容,如果数据类型非开发环境内置的数据类型,则需要进行数据类型自定义过程;
(3)Web开发环境初始化工程数据;
①初始化基础支撑服务目录和服务列表,提供基础支撑服务目录树和可视化功能组件,显示可视化编辑面板、脚本编辑器面板、数据对象面板、提示信息窗口界面元素;
②初始化开发人员定义的服务信息,自动生成基础脚本框架和代码;
③后台自动保存开发人员当前的工作内容,包括工程信息、服务信息内容;
(4)服务的具体功能开发,步骤包括;
①根据实现的服务功能,选择需要操作的地图或图层数据对象,该过程通过两种操作方式实现,一种是直接在数据对象面板上拖拽相应的数据图标到可视化面板上,另一种是直接在脚本编辑器面板上输入脚本,两种方式实现的效果一致;
②针对步骤①中的数据对象,选择其后需要执行的前置基础服务接口,该过程可以通过两种操作方式实现,一种是直接在目录树上拖拽相应的服务图标到可视化面板上,另一种是直接在脚本编辑器面板上输入脚本,两种方式实现的效果一致;
③经过步骤①和②,Web开发环境在可视化编辑面板上自动绘制出服务执行的初始流程,包括数据对象至基础服务再至待开发服务,在脚本编辑器面板同步产生相应的流程脚本;
④如果带开发的服务需要对多个数据对象进行操作,则再次执行步骤①、步骤②;
⑤在可视化编辑面板上鼠标双击待开发服务图标,则Web编辑器跳转到脚本编辑器面板,并将光标停留在服务开发脚本代码处;
⑥在脚本代码处根据实现的实际服务功能,基于数据对象,书写相应的逻辑脚本,整合并装配服务返回的数据结果,至此服务代码开发完成;
(5)服务的测试与发布;
①在Web开发环境工具栏中有一个执行按钮,点击即可对开发的服务进行执行调用,在提示信息窗口中将显示服务的编排和组装过程,最后显示服务的返回结果;
②在提示信息窗口中显示的信息类型包括信息、警告和错误,服务中出现的警告和错误均会在脚本编辑器面板的对应脚本处给出提示,以便于开发人员快速定位有问题的脚本代码;
③在Web开发环境工具栏中有一个发布按钮,点击该按钮,编辑环境在后端执行服务的编译和发布过程,发布成功后,默认弹出新的Web浏览器,在浏览器中显示服务的元数据信息,包括服务地址、参数、返回值描述内容。
而且,所述步骤(1)的③步中开发环境根据开发人员输入的登录信息,进行后台的初始化过程包括检查该人员之前的开发信息、初始化开发界面的菜单、工具条、脚本编辑器组成部分。
而且,所述步骤(2)的②步中指定服务的类型包括简单对象访问协议、表述性状态传递。
本发明的优点和积极效果是
1、本发明可以简化空间信息服务的开发过程,提供统一的基于Web的开发环境,同时在后台适配多种地理信息***平台的功能组件和服务接口,减少了开发环境搭建和配置环节,提高了服务开发的效率。
2、本发明可支持开发小组协同开发工作,提高生产效率。
3、本发明可结合容器技术进行服务发布过程。
附图说明
图1是本发明的总体框架图;
图2是本发明的空间信息服务开发与发布流程图。
具体实施方式
以下对本发明实施例做进一步详述,以下实施例只是描述性的,不是限定性的,不能以此限定本发明的保护范围。
一种空间信息服务的二次开发方法,如图1所示,该开发方法的Web开发环境管理并维护所开发的空间信息服务代码,在开发和调试过程中需要适配作为底层支撑的基础地理信息***设施,包括文件组件、接口服务和数据对象,与部署环境相结合,形成一个完整的空间信息服务二次开发和调试发布环境,具体的开发流程如图2所示,包括步骤如下:
(1)开发人员登陆Web开发环境;其中包括:
①开发人员在浏览器中输入开发环境地址信息,进入登录页面;
②在登录界面中输入账号、密码验证信息,进入开发环境主页面;
③开发环境根据开发人员输入的登录信息,进行后台的初始化过程,包括检查该人员之前的开发信息、初始化开发界面的菜单、工具条、脚本编辑器组成部分;
(2)新建空间信息服务工程;其中包括;
①选择新建工程按钮,编辑器弹出新建工程对话框,在对话框中输入新程的信息,以及至少一个新服务的名称,命名需遵循相应的命名规则;
②在服务类型列表中选择新建服务的类型,服务类型列表内容包括SOAP(简单对象访问协议)、REST(表述性状态传递);
③指定服务的输入参数和返回参数信息,包括参数名、数据类型内容,如果数据类型非开发环境内置的数据类型,还需要进行数据类型自定义过程;
(3)Web开发环境初始化工程数据;
①新建服务工程确定之后,Web开发环境后台进行工程初始化流程,主要包括数据对象初始化、服务目录初始化、可视化编辑面板初始化、脚本编辑器初始化、提示信息窗口初始化;
②数据对象初始化
a)Web开发环境后台读取配置信息中的cfg_spatial_data(空间数据配置),在内存中装配成dbo_maps(地图数据对象),该对象是一个树状列表对象,层级依次为dbo_map(地图)、dbo_layers(图层组)、dbo_layer(图层),其中图层可以和图层组位于一个层级;
b)开发环境根据内存中形成的地图数据对象,在界面上以树组件的方式将地图数据对象进行可视化展现,并在每个树节点上附加鼠标事件;
③服务目录初始化
a)Web开发环境后台读取配置信息中的cfg_api_service(服务源配置)和cfg_api_component(文件组件配置),在内存中装配成func_base_api(基础接口对象),该对象也是一个树状列表对象,列表层级依次为func_api_group(逻辑组)、func_api(功能接口对象);
b)开发环境根据内存中形成的基础接口对象,在界面上以树组件的方式将基础接口对象进行可视化展现,并在每个树节点上附加鼠标事件;
④Web开发环境界面初始化
Web开发环境界面初始化完成界面组件的初始化过程,包括菜单、工具栏、树面板、可视化编辑器、提示信息窗口各组成部分,过程如下;
a)后台执行view_on_initialize(视图初始化)事件,进行界面组件的初始化;
b)在执行过程中,依次执行menu_initialize(菜单初始化)、toolbar_initialize(工具栏初始化)、tree_panel_initialize(树面板初始化)、canvas_panel_initialize(可视化编辑面板初始化)、editor_panel_initialize(脚本编辑器初始化)、console_panel_initialize(提示信息窗口初始化)过程;
c)根据开发人员定义的服务信息,自动生成基础脚本框架代码;
d)后台自动保存开发人员当前的工作内容,包括工程信息、服务信息内容;
(4)服务的具体功能开发,步骤包括;
①根据实现的服务功能,选择需要操作的地图或图层数据对象,该过程通过两种操作方式实现,一种是直接在数据对象面板上拖拽相应的数据图标到可视化面板上,另一种是直接在脚本编辑器面板上输入脚本,两种方式实现的效果一致;
②针对步骤①中的数据对象,选择其后需要执行的前置基础服务接口,该过程通过两种操作方式实现,一种是直接在目录树上拖拽相应的服务图标到可视化面板上,另一种是直接在脚本编辑器面板上输入脚本,两种方式实现的效果一致;
③经过步骤①和②,Web开发环境在可视化编辑面板上自动绘制出服务执行的初始流程,包括数据对象→基础服务→待开发服务,在脚本编辑器面板同步产生相应的流程脚本;
④如果待开发的服务需要对多个数据对象进行操作,则再次执行步骤①、步骤②;
⑤在可视化编辑面板上鼠标双击待开发服务图标,则Web编辑器跳转到脚本编辑器面板,并将光标停留在服务开发脚本代码处,代码入口形如DemoService(datatypeparam1,datatype param2):CustomData;
⑥在脚本代码处根据实现的实际服务功能,基于数据对象,编写相应的逻辑脚本,整合并装配服务返回的数据结果,至此服务代码开发完成;
(5)服务的测试与发布;
①在Web开发环境工具栏中有一个执行按钮,点击即可对开发的服务进行执行调用,在提示信息窗口中将显示服务的编排和组装过程,最后显示服务的返回结果;
②在提示信息窗口中显示的信息类型包括信息、警告和错误,服务中出现的警告和错误均会在脚本编辑器面板的对应脚本处给出提示,以便于开发人员快速定位有问题的脚本代码;
③在Web开发环境工具栏中有一个发布按钮,点击该按钮,编辑环境在后端执行服务的编译和发布过程,发布成功后,默认弹出新的Web浏览器,在浏览器中显示服务的元数据信息,包括服务地址、参数、返回值描述内容。
效果
Web开发环境提供可视化的数据对象和服务组件及接口,通过编写少量的脚本代码即可实现新的空间信息服务的开发,简化开发过程并提升使用体验。

Claims (3)

1.一种空间信息服务的二次开发方法,其特征在于包括步骤如下:
(1)开发人员登陆Web开发环境;其中包括:
①开发人员在浏览器中输入开发环境地址信息,进入登录页面;
②在登录界面中输入账号、密码验证信息,进入开发环境主页面;
③开发环境根据开发人员输入的登录信息,进行后台的初始化过程;
(2)新建空间信息服务工程;其中包括;
①输入新建工程信息,以及至少一个新服务的名称,命名需遵循相应的命名规则;
②指定服务的类型;
③指定服务的输入参数和返回参数信息,包括参数名、数据类型内容,如果数据类型非开发环境内置的数据类型,则需要进行数据类型自定义过程;
(3)Web开发环境初始化工程数据;
①初始化基础支撑服务目录和服务列表,提供基础支撑服务目录树和可视化功能组件,显示可视化编辑面板、脚本编辑器面板、数据对象面板、提示信息窗口界面元素;
②初始化开发人员定义的服务信息,自动生成基础脚本框架和代码;
③后台自动保存开发人员当前的工作内容,包括工程信息、服务信息内容;
(4)服务的具体功能开发,步骤包括;
①根据实现的服务功能,选择需要操作的地图或图层数据对象,该过程通过两种操作方式实现,一种是直接在数据对象面板上拖拽相应的数据图标到可视化面板上,另一种是直接在脚本编辑器面板上输入脚本,两种方式实现的效果一致;
②针对步骤①中的数据对象,选择其后需要执行的前置基础服务接口,该过程可以通过两种操作方式实现,一种是直接在目录树上拖拽相应的服务图标到可视化面板上,另一种是直接在脚本编辑器面板上输入脚本,两种方式实现的效果一致;
③经过步骤①和②,Web开发环境在可视化编辑面板上自动绘制出服务执行的初始流程,包括数据对象至基础服务再至待开发服务,在脚本编辑器面板同步产生相应的流程脚本;
④如果带开发的服务需要对多个数据对象进行操作,则再次执行步骤①、步骤②;
⑤在可视化编辑面板上鼠标双击待开发服务图标,则Web编辑器跳转到脚本编辑器面板,并将光标停留在服务开发脚本代码处;
⑥在脚本代码处根据实现的实际服务功能,基于数据对象,书写相应的逻辑脚本,整合并装配服务返回的数据结果,至此服务代码开发完成;
(5)服务的测试与发布;
①在Web开发环境工具栏中有一个执行按钮,点击即可对开发的服务进行执行调用,在提示信息窗口中将显示服务的编排和组装过程,最后显示服务的返回结果;
②在提示信息窗口中显示的信息类型包括信息、警告和错误,服务中出现的警告和错误均会在脚本编辑器面板的对应脚本处给出提示,以便于开发人员快速定位有问题的脚本代码;
③在Web开发环境工具栏中有一个发布按钮,点击该按钮,编辑环境在后端执行服务的编译和发布过程,发布成功后,默认弹出新的Web浏览器,在浏览器中显示服务的元数据信息,包括服务地址、参数、返回值描述内容。
2.根据权利要求1所述的空间信息服务的二次开发方法,其特征在于:所述步骤(1)的③步中开发环境根据开发人员输入的登录信息,进行后台的初始化过程包括检查该人员之前的开发信息、初始化开发界面的菜单、工具条、脚本编辑器组成部分。
3.根据权利要求1所述的空间信息服务的二次开发方法,其特征在于:所述步骤(2)的②步中指定服务的类型包括简单对象访问协议、表述性状态传递。
CN201611049714.7A 2016-11-24 2016-11-24 一种空间信息服务的二次开发方法 Active CN106599087B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611049714.7A CN106599087B (zh) 2016-11-24 2016-11-24 一种空间信息服务的二次开发方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611049714.7A CN106599087B (zh) 2016-11-24 2016-11-24 一种空间信息服务的二次开发方法

Publications (2)

Publication Number Publication Date
CN106599087A true CN106599087A (zh) 2017-04-26
CN106599087B CN106599087B (zh) 2019-10-18

Family

ID=58593067

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611049714.7A Active CN106599087B (zh) 2016-11-24 2016-11-24 一种空间信息服务的二次开发方法

Country Status (1)

Country Link
CN (1) CN106599087B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109299422A (zh) * 2018-09-20 2019-02-01 江苏满运软件科技有限公司 可视化网页编辑方法、***、设备及存储介质
CN111512286A (zh) * 2017-12-29 2020-08-07 华为技术有限公司 编排程序的方法及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1945578A (zh) * 2006-08-26 2007-04-11 福州开睿动力通信科技有限公司 一种基于空间数据库和SVG的高速Web电子地图的生成及应用方法
CN101346000A (zh) * 2008-07-29 2009-01-14 方圆信通科技(北京)有限公司 基于gps和移动终端的提供本地移动地理信息服务的***
US20120066578A1 (en) * 2010-08-09 2012-03-15 Adapx, Inc. Attribute value management system and methods
CN104133685A (zh) * 2014-08-05 2014-11-05 广州唯品会网络技术有限公司 网站前端开发的方法与***

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1945578A (zh) * 2006-08-26 2007-04-11 福州开睿动力通信科技有限公司 一种基于空间数据库和SVG的高速Web电子地图的生成及应用方法
CN101346000A (zh) * 2008-07-29 2009-01-14 方圆信通科技(北京)有限公司 基于gps和移动终端的提供本地移动地理信息服务的***
US20120066578A1 (en) * 2010-08-09 2012-03-15 Adapx, Inc. Attribute value management system and methods
CN104133685A (zh) * 2014-08-05 2014-11-05 广州唯品会网络技术有限公司 网站前端开发的方法与***

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
李艳等: "一种可扩展的海量空间数据三维可视化开源框架开发", 《测绘科学》 *
陈腾: "基于ArcIMS的空间数据发布***的设计与实现", 《测绘与空间地理信息》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111512286A (zh) * 2017-12-29 2020-08-07 华为技术有限公司 编排程序的方法及电子设备
CN111512286B (zh) * 2017-12-29 2023-04-28 华为技术有限公司 编排程序的方法及电子设备
CN109299422A (zh) * 2018-09-20 2019-02-01 江苏满运软件科技有限公司 可视化网页编辑方法、***、设备及存储介质

Also Published As

Publication number Publication date
CN106599087B (zh) 2019-10-18

Similar Documents

Publication Publication Date Title
CN106484393B (zh) 一种可视化视图设计方法
CN105612497B (zh) 所选更新在多个环境中的自动安装
CN105612495B (zh) 在计算机***中安装所选更新之后自动解决冲突
CN105068815A (zh) 页面编辑器交互装置和方法
CN105117835A (zh) 一种基于b/s架构的电网信息机房三维可视化管理平台
CN105612496B (zh) 用于基于存储的生命周期信息来自动推荐更新的方法和***
CN102135873B (zh) 一种创建用户界面的方法和装置
CN107729230A (zh) 一种基于控件模式下的web自动化测试装置及测试方法
CN106227742A (zh) 基于b/s模式的动态网页生成方法、服务器和***
CN103150165A (zh) 用于构建户外数据采集程序的框架以及程序构建方法
CN103218225A (zh) 一种统一测发控软件开发***
CN103309659A (zh) 基于富客户端的用户界面动态生成方法及其生成装置
JP2016534419A (ja) ネイティブモバイルアプリケーションコードのコンピュータ支援開発
CN107515771A (zh) 基于SpringMVC的API文档生成方法及***
CN104935660B (zh) 一种云程序开发运行***、方法及装置
CN105278946A (zh) 一种RESTful API可视化方法
CN101291253A (zh) 一种网管客户端基于图形界面的人机命令交互方法
CN105743736A (zh) 自动化测试方法及***
CN102270137A (zh) 一种获取体系结构描述语言的方法和一种建模工具
CN105893063A (zh) 一种基于xml格式配置文件的应用程序界面及其构建方法
CN101876917A (zh) 一种开发控件的方法及装置
CN100449484C (zh) 一种生成仿真设备面板的方法及***
CN101551742A (zh) 辅助构建面向服务应用***的向导组件
CN114594927A (zh) 低代码开发方法、装置、***、服务器及存储介质
CN106846431B (zh) 一种支持多表现形式的统一Web图形绘制***

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Chen Wenkang

Inventor after: Zhang Haitao

Inventor after: Hu Xiaonan

Inventor after: Gao Yong

Inventor after: Li Qiang

Inventor after: Zhao Feng

Inventor after: Li Wenjing

Inventor after: Li Jiangwei

Inventor after: Zhao Guangjun

Inventor after: Wang Ruying

Inventor after: Li Xinrong

Inventor after: Liu Wanlong

Inventor before: Chen Wenkang

Inventor before: Li Jiangwei

Inventor before: Zhao Guangjun

Inventor before: Wang Ruying

Inventor before: Li Xinrong

Inventor before: Liu Wanlong

Inventor before: Zhang Haitao

Inventor before: Hu Xiaonan

Inventor before: Gao Yong