CN107797793A - 一种构建代理服务器框架的方法和装置 - Google Patents
一种构建代理服务器框架的方法和装置 Download PDFInfo
- Publication number
- CN107797793A CN107797793A CN201711182704.5A CN201711182704A CN107797793A CN 107797793 A CN107797793 A CN 107797793A CN 201711182704 A CN201711182704 A CN 201711182704A CN 107797793 A CN107797793 A CN 107797793A
- Authority
- CN
- China
- Prior art keywords
- interface
- framework
- proxy server
- module
- program bag
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/24—Object-oriented
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种构建代理服务器框架的方法和装置,构建代理服务器框架的方法包括:预先确定代理服务器对应的程序包;确定所述代理服务器的架构模型,所述架构模型,包括:至少一个功能模块;利用各个所述功能模块生成初始框架,以实现各个所述功能模块对应的功能;创建类库,并利用所述类库和所述程序包封装成新的程序包;将所述新的程序包放入所述初始框架中,以得到代理服务器框架。本发明提供的技术方案能够提高代理服务器的开发效率。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种构建代理服务器框架的方法和装置。
背景技术
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是一个即时通讯协议,该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,因此基于MQTT的物联网代理服务器越来越受到人们关注。
在搭建代理服务器时,开发人员通常会先获取代理服务器的程序包,然后根据程序包构建代理服务器。
然而,在构建代理服务器时,通常是由多个开发人员分工完成的,由于各个开发人员编写的代码以及编写思路不同,这会导致构建的代理服务器内部结构混乱,从而降低了代理服务器的开发效率。
发明内容
本发明实施例提供了一种物联网代理框架的构建方法和装置,能够提高代理服务器的开发效率。
第一方面,本发明实施例提供了一种构建代理服务器框架的方法,预先确定代理服务器对应的程序包,还包括:
确定所述代理服务器的架构模型,所述架构模型,包括:至少一个功能模块;
利用各个所述功能模块生成初始框架,以实现各个所述功能模块对应的功能;
创建类库,并利用所述类库和所述程序包封装成新的程序包;
将所述新的程序包放入所述初始框架中,以得到代理服务器框架。
优选地,所述利用各个所述功能模块,生成初始框架,包括:
针对每一个所述功能模块,均执行A1至A2:
A1,获取当前功能模块对应的所述至少一个功能文件和所述至少一个待实现方法;
A2,生成所述至少一个待实现方法对应的至少一个待实现方法接口;
利用各个所述功能模块对应的所述功能文件和所述待实现方法接口生成所述初始框架。
优选地,每一个所述待实现方法对应至少一个配置文件;
所述A2,包括:
获取各个所述待实现方法分别所属的至少一个方法类型;
针对每一个所述方法类型,确定当前方法类型对应的至少一个所述待实现方法;
获取各个已确定的所述待实现方法对应的每一个所述配置文件;
利用获取到的各个所述配置文件生成对应所述当前方法类型的待实现方法接口。
优选地,所述类库,包括:至少一个类;
所述程序包,包括:至少一个方法函数;
所述利用所述程序包和所述类库封装成新的程序包,包括:
提取所述程序包中的各个所述方法函数;
为所述类库中的每一个所述类配置至少一个所述方法函数,得到每一个所述类对应的调用方法,以利用所述调用方法调用所述初始框架中的所述待实现方法;
对所述类库中的各个所述调用方法进行封装,以得到所述新的程序包。
优选地,在所述将所述新的程序包放入所述初始框架中之后,进一步包括:
针对每一个所述调用方法,生成当前调用方法对应的方法调用接口;
针对每一个所述方法调用接口,为当前方法调用接口配置一个所述待实现方法接口,并实现所述当前方法调用接口与配置的所述待实现方法接口的对接。
第二方面,本发明实施例提供了一种构建代理服务器框架的装置,包括:配置模块、确定模块、生成模块、封装模块和处理模块;
所述配置模块,用于确定代理服务器对应的程序包;
所述确定模块,用于确定所述代理服务器的架构模型,所述架构模型,包括:至少一个功能模块;
所述生成模块,用于利用所述确定模块确定的各个所述功能模块生成初始框架,以实现各个所述功能模块对应的功能;
所述封装模块,用于创建类库,并利用所述类库和所述配置模块确定的所述程序包封装成新的程序包;
所述处理模块,用于将所述封装模块得到的所述新的程序包放入所述生成模块得到的所述初始框架中,以得到代理服务器框架。
优选地,所述功能模块对应至少一个功能文件和至少一个待实现方法;
所述生成模块,包括:接口生成单元和框架构造单元;
所述接口生成单元,用于针对每一个所述功能模块,均执行A1至A2:
A1,获取当前功能模块对应的所述至少一个功能文件和所述至少一个待实现方法;
A2,生成所述至少一个待实现方法对应的至少一个待实现方法接口;
所述框架构造单元,用于利用所述接口生成单元获取到的各个所述功能模块对应的所述功能文件和所述待实现方法接口生成所述初始框架。
优选地,每一个所述待实现方法对应至少一个配置文件;
所述接口生成单元,用于获取各个所述待实现方法分别所属的至少一个方法类型;针对每一个所述方法类型,确定当前方法类型对应的至少一个所述待实现方法;获取各个已确定的所述待实现方法对应的每一个所述配置文件;利用获取到的各个所述配置文件生成对应所述当前方法类型的待实现方法接口。
优选地,所述类库,包括:至少一个类;
所述程序包,包括:至少一个方法函数;
所述封装模块,包括:方法提取单元、方法配置单元和方法封装单元;
所述方法提取单元,用于提取所述程序包中的各个所述方法函数;
所述方法配置单元,用于为所述类库中的每一个所述类配置至少一个所述方法提取单元提取到的所述方法函数,得到每一个所述类对应的调用方法,以利用所述调用方法调用所述初始框架中的所述待实现方法;
所述方法封装单元,用于对所述类库中的所述方法配置单元得到的各个调用方法进行封装,以得到所述新的程序包。
优选地,进一步包括:接口生成模块和接口对接模块;
所述接口生成模块,用于针对每一个所述调用方法,生成当前调用方法对应的方法调用接口;
所述接口对接模块,用于针对所述接口生成模块生成的每一个所述方法调用接口,为当前方法调用接口配置一个所述待实现方法接口,并实现所述当前方法调用接口与配置的所述待实现方法接口的对接。
本发明实施例提供了一种构建代理服务器框架的方法和装置,预先确定代理服务器对应的程序包,再确定代理服务器的架构模型,代理服务器的架构模型是代理服务器框架的基础,决定了代理服务器的功能。代理服务器的架构模型中包括有功能模块,功能模块决定代理服务器框架的结构,利用各个功能模块生成的初始框架具有各功能模块对应的结构以及各个功能模块对应的功能。由于程序包中的各程序之间逻辑关系不够完备,不能直接利用程序包中的程序调用初始框架中的各个功能,因此要创建类库,并通过对类库和程序包封装以完善程序包中的各程序之间逻辑关系。最后,将新的程序包放入初始框架中,得到完整的代理服务器框架。由此可见,本发明实施例通过架构模型搭建初始框架,确定代理服务器框架的功能,以实现代理服务器功能模板化;通过完善程序包中各程序之间的逻辑关系,使得程序包中逻辑关系对应的代码模板化。通过代理服务器功能模板化和逻辑关系对应的代码模板化,构建代理服务器框架,使得代理服务器内部结构稳定、规范,消除了多个开发人员编写代码时对代理服务器内部结构产生的负面影响,从而提高了代理服务器的开发效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的一种构建代理服务器框架的方法的流程图;
图2是本发明一个实施例提供的另一种构建代理服务器框架的方法的流程图;
图3是本发明一个实施例提供的一种构建代理服务器装置的结构示意图;
图4是本发明一个实施例提供的另一种构建代理服务器装置的结构示意图;
图5是本发明一个实施例提供的又一种构建代理服务器装置的结构示意图;
图6是本发明一个实施例提供的再一种构建代理服务器装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种构建代理服务器框架的方法,包括以下步骤:
步骤101,预先确定代理服务器对应的程序包。
步骤102,确定所述代理服务器的架构模型,所述架构模型,包括:至少一个功能模块。
步骤103,利用各个所述功能模块生成初始框架,以实现各个所述功能模块对应的功能。
步骤104,创建类库,并利用所述类库和所述程序包封装成新的程序包。
步骤105,将所述新的程序包放入所述初始框架中,以得到代理服务器框架。
本发明实施例提供了一种构建代理服务器框架的方法,预先确定代理服务器对应的程序包,再确定代理服务器的架构模型,代理服务器的架构模型是代理服务器框架的基础,决定了代理服务器的功能。代理服务器的架构模型中包括有功能模块,功能模块决定代理服务器框架的结构,利用各个功能模块生成的初始框架具有各功能模块对应的结构以及各个功能模块对应的功能。由于程序包中的各程序之间逻辑关系不够完备,不能直接利用程序包中的程序调用初始框架中的各个功能,因此要创建类库,并通过对类库和程序包封装以完善程序包中的各程序之间逻辑关系。最后,将新的程序包放入初始框架中,得到完整的代理服务器框架。由此可见,本发明实施例通过架构模型搭建初始框架,确定代理服务器框架的功能,以实现代理服务器功能模板化;通过完善程序包中各程序之间的逻辑关系,使得程序包中逻辑关系对应的代码模板化通过代理服务器功能模板化和逻辑关系对应的代码模板化,构建代理服务器框架,使得代理服务器内部结构稳定、规范,消除了多个开发人员编写代码时对代理服务器内部结构产生的负面影响,从而提高了代理服务器的开发效率。
为了实现构架模型中各个功能模块对应的功能,在本发明的一个实施例中,所述利用各个所述功能模块,生成初始框架,包括:
针对每一个所述功能模块,均执行A1至A2:
A1,获取当前功能模块对应的所述至少一个功能文件和所述至少一个待实现方法;
A2,生成所述至少一个待实现方法对应的至少一个待实现方法接口;
利用各个所述功能模块对应的所述功能文件和所述待实现方法接口生成所述初始框架。
对于功能模块,需要通过功能文件和待实现方法来实现功能模块对应的功能,例如,与数据库相关的功能模块具有对数据库进行读写操作的功能,实现相关的功能需要有相应的sql(数据库)文件和sql语句,即功能文件和待实现方法。其中,功能文件决定初始框架的结构,待实现方法则决定初始框架的功能。在生成待实现方法对应的待实现方法接口后,再利用各个功能文件和各个待实现方法的接口构建初始框架,以实现架构模板化。
为了生成各个待实现方法的接口,在本发明的一个实施例中,所述待实现方法对应至少一个配置文件;
所述A2,包括:
获取各个所述待实现方法分别所属的至少一个方法类型;
针对每一个所述方法类型,确定当前方法类型对应的至少一个所述待实现方法;
获取各个已确定的所述待实现方法对应的每一个所述配置文件;
利用获取到的各个所述配置文件生成对应所述当前方法类型的待实现方法接口。
一个功能模块关联很多方法,针对每一个方法生成接口,使得框架结构复杂,且增加了开发人员的工作量,因此要利用一个接口实现一个方法类型包括的所有待实现方法,例如,发布10种类型的服务,需要10种发布方法不同,10种发布方法都属于发布类,如果每一个方法都生成一个待实现方法接口,那么需要编写10次代码;如果采用实现发布类的待实现方法接口,那么需要编写1次代码。
程序包中程序之间逻辑关系不够完备,甚至很多程序之间相互独立,因此,每次开发代理服务器时,开发人员都要花费时间去编写代码以完善程序包中程序之间逻辑关系,为了解决上述问题,在本发明的一个实施例中,所述类库,包括:至少一个类;
所述程序包,包括:至少一个方法函数;
所述利用所述程序包和所述类库封装成新的程序包,包括:
提取所述程序包中的各个所述方法函数;
为所述类库中的每一个所述类配置至少一个所述方法函数,得到每一个所述类对应的调用方法,以利用所述调用方法调用所述初始框架中的所述待实现方法;
对所述类库中的各个所述调用方法进行封装,以得到所述新的程序包。
在创建的类库中,既包括程序包中各个程序对应的类,也包括为了使完善各个程序之间的逻辑关系而添加的类。在从程序包中提取各个方法函数后,将各个方法函数配置给类库中的各个类,从而得到逻辑关系完善的调用方法,再将各个调用方法进行封装,最终得到新的程序包。这样,开发人员可以利用新的程序包直接调取代理服务器框架中的方法,而不需要对程序包中的各个程序之间的逻辑关系进行加工,减少了开发人员的工作量;同时也避免了由于开发人员水平不一致造成的程序失误。
为了方便开发人员对代理服务器的业务层进行开发,在本发明的一个实施例中,在所述将所述新的程序包放入所述初始框架中之后,进一步包括:
针对每一个所述调用方法,生成当前调用方法对应的方法调用接口;
针对每一个所述方法调用接口,为当前方法调用接口配置一个所述待实现方法接口,并实现所述当前方法调用接口与配置的所述待实现方法接口的对接。
在开发代理服务器过程中,开发人员会编写代码以实现从初始框架中调用待实现方法,因此对调用待实现方法的过程模板化,以减少开发人员的工作量。先针对新的程序包中各个调用方法生成方法调用接口,然后为每一个方法调用接口配置一个待实现方法接口,再实现上述两个接口的对接,这样开发人员直接通过新的程序包中接口就能直接调用待实现方法接口的方法,而不需要再次编辑程序代码实现调用过程。
下面以构建基于MQTT的物联网代理服务器为例,展开说明本发明实施例提供的技术方案,如图2所示,本发明实施例提供了另一种物联网代理框架的构建方法,包括以下步骤:
步骤201,确定代理服务器的架构模型为SpringMVC模型。
在本发明实施例中,SpringMVC模型为Spring框架提供的构建Web应用程序的全功能MVC(Model View Controller,模型-视图-控制器)模块。
步骤202,获取SpringMVC模型中各个功能模块的对应的至少一个功能文件和至少一个待实现方法。
在本发明实施例中,SpringMVC模型分为4个功能模块,分别为JSP模块、skins模块、SQL模块和SRC模块。其中,JSP模块对应的功能文件为jsp文件(Java Server Pages,java服务器页面),其对应的待实现方法为界面显方法;skins模块对应的功能文件为js文件(JavaScript,一种直译式脚本语言)以及相关CSS文件(Cascading Style Sheets,层叠样式表),其对应的待实现方法为界面显示方法;SQL模块对应的功能文件为数据库相关配置文件,其对应的待实现方法为在数据库中读写方法;SRC模块对应的功能文件为与数据存储相关的文件,对应的待实现方法为存储方法。
步骤203,获取各个待实现方法分别所属的至少一个方法类型。
在本发明实施例中,方法类型包括有订阅类、发布类和配置类。其中,订阅类的方法用于完成业务中所有需要服务器订阅信息的工作;发布类的方法用于完成关于业务中服务器端发布信息的各种操作;配置类的方法用于完成各个业务模块中关于订阅主题、发布主题的文件配置。
步骤204,针对每一个方法类型,确定当前方法类型对应的至少一个待实现方法。
步骤205,获取各个已确定的待实现方法对应的每一个配置文件。
在本发明实施例中,每一个待实现方法对应至少一个配置文件。
步骤206,利用获取到的各个配置文件生成对应当前方法类型的待实现方法接口。
在本发明实施例中,初始框架中的待实现方法接口对应一类方法,以减少开发人员的工作量。
步骤207,利用至少一个功能文件和至少一个待实现方法接口生成初始框架。
在本发明实施例中,初始框架用以实现SpringMVC模型的功能,因此具有与SpringMVC模型相同的层次结构,即页面层、数据层和逻辑业务层,其中,页面层用于向客户展示数据;数据层用于存储数据;逻辑业务层用于执行客户发送的操作指令。
步骤208,创建类库,并提取预先确定的代理服务器对应的程序包中的各个方法函数。
在本发明实施例中,在新建的工程中创建类库,并在新建的工程中完成封装新的程序包。
步骤209,为类库中的每一个类配置至少一个方法函数,得到每一个类对应的调用方法。
在本发明实施例中,类库中既有程序包中定义的类,也有开发人员为完善程序包中各个方法的逻辑关系而创建的类;得到的调用方法用来调用初始框架中的待实现方法。
步骤210,对类库中的各个调用方法进行封装,以得到新的程序包。
步骤211,将新的程序包放入初始框架中,以得到代理服务器框架。
步骤212,针对每一个调用方法,生成当前调用方法对应的方法调用接口。
步骤213,针对每一个方法调用接口,为当前方法调用接口配置一个待实现方法接口,并实现当前方法调用接口与配置的待实现方法接口的对接。
在本发明实施例中,通过为每一个方法调用接口配置与之对接的待实现方法接口,使得调用待实现方法的过程模板化,从而减少了开发人员工作量。
本发明上述实施例通过针对代理服务器的架构模型进行模板化,使得开发人员不用对同一类型的代理服务器进行重复开发;利用类库对程序包进行重新封装,完善程序包中个方法之间的逻辑关系,使得开发人员对不需要程序包中的各个程序之间的逻辑关系进行加工;通过对接方法调用接口和待实现方法接口,实现二次封装,解决了由多个开发人员采用多个实现过程引发的代理服务器结构不稳定的问题。因此本发明实施例提供的构建代理服务器框架的方法能够减少开发人员的工作量,并降低人为因素造成程序错误的可能性,从而提高了代理服务器的开发效率。
如图3所示,本发明实施例提供了一种构建代理服务器框架的装置,包括:配置模块301、确定模块302、生成模块303、封装模块304和处理模块305;
配置模块301,用于确定代理服务器对应的程序包;
确定模块302,用于确定所述代理服务器的架构模型,所述架构模型,包括:至少一个功能模块;
生成模块303,用于利用确定模块302确定的各个所述功能模块生成初始框架,以实现各个所述功能模块对应的功能;
封装模块304,用于创建类库,并利用所述类库和配置模块301确定的所述程序包封装成新的程序包;
处理模块305,用于将封装模块304得到的所述新的程序包放入生成模块303得到的所述初始框架中,以得到代理服务器框架。
如图4所示,本发明实施例提供了另一种构建代理服务器框架的装置,
生成模块303,包括:接口生成单元3031和框架构造单元3032;
接口生成单元3031,用于针对每一个所述功能模块,均执行A1至A2:
A1,获取当前功能模块对应的所述至少一个功能文件和所述至少一个待实现方法;
A2,生成所述至少一个待实现方法对应的至少一个待实现方法接口;
框架构造单元3032,用于利用所述接口生成单元获取到的各个所述功能模块对应的所述功能文件和所述待实现方法接口生成所述初始框架。
在本发明的一个实施例中,每一个所述待实现方法对应至少一个配置文件;
接口生成单元3031,用于获取各个所述待实现方法分别所属的至少一个方法类型;针对每一个所述方法类型,确定当前方法类型对应的至少一个所述待实现方法;获取各个已确定的所述待实现方法对应的每一个所述配置文件;利用获取到的各个所述配置文件生成对应所述当前方法类型的待实现方法接口。
如图5所示,本发明实施例提供了又一种构建代理服务器框架的装置,
所述类库,包括:至少一个类;
所述程序包,包括:至少一个方法函数;
封装模块304,包括:方法提取单元3041、方法配置单元3042和方法封装单元3043;
方法提取单元3041,用于提取所述程序包中的各个所述方法函数;
方法配置单元3042,用于为所述类库中的每一个所述类配置至少一个方法提取单元3041提取到的所述方法函数,得到每一个所述类对应的调用方法,以利用所述调用方法调用所述初始框架中的所述待实现方法;
方法封装单元3043,用于对所述类库中方法配置单元3042得到的各个调用方法进行封装,以得到所述新的程序包。
如图6所示,本发明实施例提供了再一种构建代理服务器框架的装置,
进一步包括:接口生成模块601和接口对接模块602;
接口生成模块601,用于针对每一个所述调用方法,生成当前调用方法对应的方法调用接口;
接口对接模块602,用于针对每一个接口生成模块601生成的所述方法调用接口,为当前方法调用接口配置一个所述待实现方法接口,并实现所述当前方法调用接口与配置的所述待实现方法接口的对接。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明实施例提供了一种可读介质,包括执行指令,当存储控制器的处理器执行所述执行指令时,所述存储控制器执行本发明上述实施例中任一所述的构建代理服务器框架的方法。
本发明实施例提供了一种存储控制器,包括:处理器、存储器和总线;
所述处理器和所述存储器通过所述总线连接;
所述存储器,当所述存储控制器运行时,所述处理器执行所述存储器存储的所述执行指令,以使所述存储控制器执行执行本发明上述实施例中任一所述的构建代理服务器框架的方法。
综上所述,本发明各个实施例至少具有如下有益效果:
1、本发明一实施例中,预先确定代理服务器对应的程序包,再确定代理服务器的架构模型,代理服务器的架构模型是代理服务器框架的基础,决定了代理服务器的功能。代理服务器的架构模型中包括有功能模块,功能模块决定代理服务器框架的结构,利用各个功能模块生成的初始框架具有各功能模块对应的结构以及各个功能模块对应的功能。由于程序包中的各程序之间逻辑关系不够完备,不能直接利用程序包中的程序调用初始框架中的各个功能,因此要创建类库,并通过对类库和程序包封装以完善程序包中的各程序之间逻辑关系。最后,将新的程序包放入初始框架中,得到完整的代理服务器框架。由此可见,本发明实施例通过架构模型搭建初始框架,确定代理服务器框架的功能,以实现代理服务器功能模板化;通过完善程序包中各程序之间的逻辑关系,使得程序包中逻辑关系对应的代码模板化。通过代理服务器功能模板化和逻辑关系对应的代码模板化,构建代理服务器框架,使得代理服务器内部结构稳定、规范,消除了多个开发人员编写代码时对代理服务器内部结构产生的负面影响,从而提高了代理服务器的开发效率。
2、本发明一实施例中,通过构造初始框架,将代理服务器的架构模板化,以减少开发人员的代码重构时间,从而进一步提高了代理服务器的开发效率。
3、本发明一实施例中,通过按照待实现方法的方法类型生成接口,使得代理服务器的架构中的接口模板化,降低了开发人员在创建多个接口时的失误率,从而进一步提高了代理服务器的开发效率。
4、本发明一实施例中,利用类库和程序包中的方法函数构造调用方法,并封装调用方法,使得开发人员不需要对程序包中的各个程序之间的逻辑关系进行加工,减少了开发人员的工作量,从而进一步提高了代理服务器的开发效率。
5、本发明一实施例中,为方法调用接口配置待实现方法接口,并实现方法调用接口与待实现方法接口对接,将调用待实现方法的过程模板化,解决了由多个开发人员采用多个实现过程引发的代理服务器结构不稳定的问题,从而进一步提高了代理服务器的开发效率。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个〃····〃”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种构建代理服务器框架的方法,其特征在于,预先确定代理服务器对应的程序包,还包括:
确定所述代理服务器的架构模型,所述架构模型,包括:至少一个功能模块;
利用各个所述功能模块生成初始框架,以实现各个所述功能模块对应的功能;
创建类库,并利用所述类库和所述程序包封装成新的程序包;
将所述新的程序包放入所述初始框架中,以得到代理服务器框架。
2.根据权利要求1所述的方法,其特征在于,
所述利用各个所述功能模块,生成初始框架,包括:
针对每一个所述功能模块,均执行A1至A2:
A1,获取当前功能模块对应的所述至少一个功能文件和所述至少一个待实现方法;
A2,生成所述至少一个待实现方法对应的至少一个待实现方法接口;
利用各个所述功能模块对应的所述功能文件和所述待实现方法接口生成所述初始框架。
3.根据权利要求2所述的方法,其特征在于,
每一个所述待实现方法对应至少一个配置文件;
所述A2,包括:
获取各个所述待实现方法分别所属的至少一个方法类型;
针对每一个所述方法类型,确定当前方法类型对应的至少一个所述待实现方法;
获取各个已确定的所述待实现方法对应的每一个所述配置文件;
利用获取到的各个所述配置文件生成对应所述当前方法类型的待实现方法接口。
4.根据权利要求3所述的方法,其特征在于,
所述类库,包括:至少一个类;
所述程序包,包括:至少一个方法函数;
所述利用所述程序包和所述类库封装成新的程序包,包括:
提取所述程序包中的各个所述方法函数;
为所述类库中的每一个所述类配置至少一个所述方法函数,得到每一个所述类对应的调用方法,以利用所述调用方法调用所述初始框架中的所述待实现方法;
对所述类库中的各个所述调用方法进行封装,以得到所述新的程序包。
5.根据权利要求4所述的方法,其特征在于,
在所述将所述新的程序包放入所述初始框架中之后,进一步包括:
针对每一个所述调用方法,生成当前调用方法对应的方法调用接口;
针对每一个所述方法调用接口,为当前方法调用接口配置一个所述待实现方法接口,并实现所述当前方法调用接口与配置的所述待实现方法接口的对接。
6.一种构建代理服务器框架的装置,其特征在于,包括:配置模块、确定模块、生成模块、封装模块和处理模块;
所述配置模块,用于确定代理服务器对应的程序包;
所述确定模块,用于确定所述代理服务器的架构模型,所述架构模型,包括:至少一个功能模块;
所述生成模块,用于利用所述确定模块确定的各个所述功能模块生成初始框架,以实现各个所述功能模块对应的功能;
所述封装模块,用于创建类库,并利用所述类库和所述配置模块确定的所述程序包封装成新的程序包;
所述处理模块,用于将所述封装模块得到的所述新的程序包放入所述生成模块得到的所述初始框架中,以得到代理服务器框架。
7.根据权利要求6所述的装置,其特征在于,
所述生成模块,包括:接口生成单元和框架构造单元;
所述接口生成单元,用于针对每一个所述功能模块,均执行A1至A2:
A1,获取当前功能模块对应的所述至少一个功能文件和所述至少一个待实现方法;
A2,生成所述至少一个待实现方法对应的至少一个待实现方法接口;
所述框架构造单元,用于利用所述接口生成单元获取到的各个所述功能模块对应的所述功能文件和所述待实现方法接口生成所述初始框架。
8.根据权利要求7所述的装置,其特征在于,
每一个所述待实现方法对应至少一个配置文件;
所述接口生成单元,用于获取各个所述待实现方法分别所属的至少一个方法类型;针对每一个所述方法类型,确定当前方法类型对应的至少一个所述待实现方法;获取各个已确定的所述待实现方法对应的每一个所述配置文件;利用获取到的各个所述配置文件生成对应所述当前方法类型的待实现方法接口。
9.根据权利要求8所述的装置,其特征在于,
所述类库,包括:至少一个类;
所述程序包,包括:至少一个方法函数;
所述封装模块,包括:方法提取单元、方法配置单元和方法封装单元;
所述方法提取单元,用于提取所述程序包中的各个所述方法函数;
所述方法配置单元,用于为所述类库中的每一个所述类配置至少一个所述方法提取单元提取到的所述方法函数,得到每一个所述类对应的调用方法,以利用所述调用方法调用所述初始框架中的所述待实现方法;
所述方法封装单元,用于对所述类库中的所述方法配置单元得到的各个调用方法进行封装,以得到所述新的程序包。
10.根据权利要求9所述的装置,其特征在于,进一步包括:接口生成模块和接口对接模块;
所述接口生成模块,用于针对每一个所述调用方法,生成当前调用方法对应的方法调用接口;
所述接口对接模块,用于针对所述接口生成模块生成的每一个所述方法调用接口,为当前方法调用接口配置一个所述待实现方法接口,并实现所述当前方法调用接口与配置的所述待实现方法接口的对接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711182704.5A CN107797793B (zh) | 2017-11-23 | 2017-11-23 | 一种构建代理服务器框架的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711182704.5A CN107797793B (zh) | 2017-11-23 | 2017-11-23 | 一种构建代理服务器框架的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107797793A true CN107797793A (zh) | 2018-03-13 |
CN107797793B CN107797793B (zh) | 2020-10-23 |
Family
ID=61536332
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711182704.5A Active CN107797793B (zh) | 2017-11-23 | 2017-11-23 | 一种构建代理服务器框架的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107797793B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108762806A (zh) * | 2018-05-09 | 2018-11-06 | 成都市极米科技有限公司 | 一种Android系统定制包分离系统、定制升级包生成系统及其实现方法 |
CN109062551A (zh) * | 2018-08-08 | 2018-12-21 | 青岛大快搜索计算技术股份有限公司 | 基于大数据开发命令集的开发框架 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080052663A1 (en) * | 2006-07-17 | 2008-02-28 | Rod Cope | Project extensibility and certification for stacking and support tool |
CN102541996A (zh) * | 2011-11-22 | 2012-07-04 | 大唐软件技术股份有限公司 | 一种基于jdbc的数据访问层构建方法及装置 |
CN106657394A (zh) * | 2017-02-10 | 2017-05-10 | 山东浪潮商用系统有限公司 | 一种基于物联网大数据的设备信息采集系统及方法 |
CN106775772A (zh) * | 2017-01-20 | 2017-05-31 | 山东浪潮商用系统有限公司 | 一种基于Mqtt协议服务器实现方法 |
-
2017
- 2017-11-23 CN CN201711182704.5A patent/CN107797793B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080052663A1 (en) * | 2006-07-17 | 2008-02-28 | Rod Cope | Project extensibility and certification for stacking and support tool |
CN102541996A (zh) * | 2011-11-22 | 2012-07-04 | 大唐软件技术股份有限公司 | 一种基于jdbc的数据访问层构建方法及装置 |
CN106775772A (zh) * | 2017-01-20 | 2017-05-31 | 山东浪潮商用系统有限公司 | 一种基于Mqtt协议服务器实现方法 |
CN106657394A (zh) * | 2017-02-10 | 2017-05-10 | 山东浪潮商用系统有限公司 | 一种基于物联网大数据的设备信息采集系统及方法 |
Non-Patent Citations (1)
Title |
---|
MACLECHEN: "实战 :Spring MVC + 注解 +SqlServer 框架搭建及详解", 《HTTPS://BLOG.CSDN.NET/YISHENGZHIAI005/ARTICLE/DETAILS/53172915》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108762806A (zh) * | 2018-05-09 | 2018-11-06 | 成都市极米科技有限公司 | 一种Android系统定制包分离系统、定制升级包生成系统及其实现方法 |
CN109062551A (zh) * | 2018-08-08 | 2018-12-21 | 青岛大快搜索计算技术股份有限公司 | 基于大数据开发命令集的开发框架 |
Also Published As
Publication number | Publication date |
---|---|
CN107797793B (zh) | 2020-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8239340B2 (en) | Message conduit systems with algorithmic data stream control and methods for processing thereof | |
CN110297632A (zh) | 代码生成方法和装置 | |
CN110716748B (zh) | 业务处理方法、装置、计算机可读介质及电子设备 | |
CN103383645B (zh) | 代码生成方法及系统 | |
US20170185507A1 (en) | Processing special requests at dedicated application containers | |
CN109324787A (zh) | 一种业务软件开发方法、装置及终端设备 | |
CN102542045B (zh) | 对于资源的统一访问 | |
CN108519952A (zh) | 一种分布式的web自动化测试系统及方法 | |
US20150089469A1 (en) | Computer-aided development of native mobile application code | |
CN110908712A (zh) | 移动端跨平台的数据处理方法和设备 | |
CN108363566A (zh) | 一种项目开发过程中文件配置方法、智能终端及存储介质 | |
CN107632823A (zh) | 一种软件开发方法及装置 | |
CN114996619A (zh) | 一种页面显示的方法、装置、计算机设备及存储介质 | |
CN115878112A (zh) | 一种多方复杂商业协议智能合约生成系统及其生成方法 | |
CN107797793A (zh) | 一种构建代理服务器框架的方法和装置 | |
US11315208B2 (en) | Conceptual representation of business processes for cross-domain mapping | |
CN113094039B (zh) | 一种基于数据库表的代码自动生成系统 | |
Li et al. | Breeze/adl: Graph grammar support for an xml-based software architecture description language | |
TWI414995B (zh) | 開發及執行平台 | |
Lee et al. | An aspect-oriented framework for developing component-based software with the collaboration-based architectural style | |
CN107832046A (zh) | 数据生成方法及装置 | |
CN105183487B (zh) | 基于抽注服务的软件开发方法及其装置 | |
CN113542323A (zh) | 业务处理方法、装置、设备及计算机可读存储介质 | |
Lukichev et al. | Using UML-based rules for web services modeling | |
Ducreux et al. | Rapid prototyping of complete systems, the case study of a smart parking |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200917 Address after: 250100 Inspur Science Park, No. 1036, Inspur Road, high tech Zone, Jinan City, Shandong Province Applicant after: Inspur Software Technology Co.,Ltd. Address before: 250100, Ji'nan province high tech Zone, Sun Village Branch Road, No. 2877, building, floor, building, on the first floor Applicant before: SHANDONG INSPUR BUSINESS SYSTEM Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |