CN112732364A - 一种同时发布web service与rest服务的方法 - Google Patents

一种同时发布web service与rest服务的方法 Download PDF

Info

Publication number
CN112732364A
CN112732364A CN202110081233.9A CN202110081233A CN112732364A CN 112732364 A CN112732364 A CN 112732364A CN 202110081233 A CN202110081233 A CN 202110081233A CN 112732364 A CN112732364 A CN 112732364A
Authority
CN
China
Prior art keywords
service
webapi
rest
web service
annotation
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.)
Pending
Application number
CN202110081233.9A
Other languages
English (en)
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.)
Inspur Software Co Ltd
Original Assignee
Inspur Software 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 Inspur Software Co Ltd filed Critical Inspur Software Co Ltd
Priority to CN202110081233.9A priority Critical patent/CN112732364A/zh
Publication of CN112732364A publication Critical patent/CN112732364A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44589Program code verification, e.g. Java bytecode verification, proof-carrying code

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开一种同时发布web service与rest服务的方法,涉及软件服务发布技术领域;分别在注解@WebApi中添加Web Service服务类型参数和rest服务类型参数,通过@WebApi的注解分别指定Web Service服务和Rest服务,并启动业务应用组件,同时发布Web Service服务和Rest服务。本发明方法能很好的与开源框架完全解耦,省去了很多配置,不再依赖开源框架容器加载。开发人员不需要关注代码底层,省去很多学习成本,可扩展性强,易于维护,便于管理。

Description

一种同时发布web service与rest服务的方法
技术领域
本发明公开一种方法,涉及软件服务发布技术领域,具体地说是一种同时发布webservice与rest服务的方法。
背景技术
在项目平台组件结合业务发展中,尤其与第三方业务或第三方集成方进行接口对接的时候,需要兼容各种服务的发布与调用,现有的web service服务发布一般需要借助开源基础框架spring,并且发布服务需要配置很多文件,一方面增加了应用组件的服务维护成本,另一方面,每次发布一个新服务,就需要增加一个配置,导致了组件体量增加,出错的概率直线上升。
而针对rest服务而言,同样有上述web service服务发布的缺点,并且一般情况下两类服务,无法做到兼容发布,现有的应用组件在发布rest服务的时候,需要单独增加配置,因此如进行web service与rest服务的同时发布,既要维护web service的配置文件,同时,也需要维护rest服务的配置文件,增加开发成本,且容易出错。
发明内容
本发明针对现有技术的问题,提供一种同时发布web service与rest服务的方法,满足现有项目平台同时发布web service服务与rest服务复杂配置、冗余配置的需求,更简洁、更便捷实现零配置两种服务发布。
本发明提出的具体方案是:
一种同时发布web service与rest服务的方法,分别在注解@WebApi中添加WebService服务类型参数和rest服务类型参数,
通过@WebApi的注解分别指定Web Service服务和Rest服务,并启动业务应用组件,同时发布Web Service服务和Rest服务。
优选地,所述的一种同时发布web service与rest服务的方法中在业务底层通过类加载器,遍历加载指定为@WebApi注解的业务接口,用于发布Web Service服务和Rest服务。
优选地,所述的一种同时发布web service与rest服务的方法中需要发布为WebService服务的类,指定@WebApi的注解,并标注serviceType=WebApi.Type.WS。
优选地,所述的一种同时发布web service与rest服务的方法中所述需要发布为Rest服务的类,指定@WebApi的注解,并标注serviceType=WebApi.Type.REST。
一种同时发布web service与rest服务的系统,包括添加模块、指定模块及启动发布模块,
添加模块分别在注解@WebApi中添加Web Service服务类型参数和rest服务类型参数,
指定模块通过@WebApi的注解分别指定Web Service服务和Rest服务,启动发布模块启动业务应用组件,同时发布Web Service服务和Rest服务。
优选地,所述的一种同时发布web service与rest服务的系统中指定模块在业务底层通过类加载器,遍历加载指定为@WebApi注解的业务接口,用于发布Web Service服务和Rest服务。
优选地,所述的一种同时发布web service与rest服务的系统中需要发布为WebService服务的类,指定模块指定@WebApi的注解,并标注serviceType=WebApi.Type.WS。
优选地,所述的一种同时发布web service与rest服务的系统中需要发布为Rest服务的类,指定模块指定@WebApi的注解,并标注serviceType=WebApi.Type.REST。
一种同时发布web service与rest服务的装置,包括至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行所述一种同时发布webservice与rest服务的方法。
本发明的有益之处是:
本发明提供一种同时发布web service与rest服务的方法,分别在注解@WebApi中添加Web Service服务类型参数和rest服务类型参数,通过@WebApi的注解分别指定WebService服务和Rest服务,并启动业务应用组件,同时发布Web Service服务和Rest服务。本发明方法能很好的与开源框架完全解耦,省去了很多配置,不再依赖开源框架容器加载。开发人员不需要关注代码底层,省去很多学习成本,可扩展性强,易于维护,便于管理。
附图说明
图1是本发明方法流程示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
本发明还提供一种同时发布web service与rest服务的方法,分别在注解@WebApi中添加Web Service服务类型参数和rest服务类型参数,
通过@WebApi的注解分别指定Web Service服务和Rest服务,并启动业务应用组件,同时发布Web Service服务和Rest服务。
通过本发明方法可以解决现有框架依赖性较强。需要依赖开源框架支持,需要配置较多配置文件的问题。且现有服务发布学习成本较高。对开源框架使用不熟悉的人员来讲,需要花费时间验证、调试。而本发明方法很好的与开源框架完全解耦,省去了很多配置,不再依赖开源框架容器加载。开发人员不需要关注代码底层,省去很多学习成本,可扩展性强,易于维护,便于管理。
具体应用中,在本发明的一些实施例中,具体过程为:
使用注解@WebApi指定要发布的服务类型:在注解中增加了两种类型参数,一个指定为Web Service服务,一个指定为REST服务,并在业务底层通过类加载器,遍历加载指定为@WebApi注解的业务接口,并将其发布为服务。这种方式直接省略了现有服务发布频繁编写复杂配置文件的历史,一个注解就能替代所有配置。
开发者使用的时候指定具体包路径,编写业务代码,需要发布为WebService服务的,则给该类加上@WebApi的注解,并标注serviceType=WebApi.Type.WS,即使用@WebApi(serviceType=WebApi.Type.WS)表示要发布web service服务,需要发布为Rest服务的,则给该类加上@WebApi的注解,并标注serviceType=WebApi.Type.REST,即使用@WebApi(serviceType=WebApi.Type.REST)表示要发布rest服务。
指定之后,重启应用,JVM虚拟机将会扫描指定包名下的目标类,将其发布为指定服务。本发明的发布方式简单明了,目标明确,不需依赖额外的组件包,也不需要配置不同的文件来区分REST还是WebService服务,上手容易,易于开发维护。
同时本发明还提供一种同时发布web service与rest服务的系统,包括添加模块、指定模块及启动发布模块,
添加模块分别在注解@WebApi中添加Web Service服务类型参数和rest服务类型参数,
指定模块通过@WebApi的注解分别指定Web Service服务和Rest服务,启动发布模块启动业务应用组件,同时发布Web Service服务和Rest服务。
上述系统内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
以及本发明提供一种同时发布web service与rest服务的装置,包括至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行所述一种同时发布webservice与rest服务的方法。
上述装置内的处理器的信息交互、执行可读程序过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
需要说明的是,上述各较佳实施例中流程和各系统结构及装置中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。上述各实施例中描述的系统结构可以是物理结构,也可以是逻辑结构,即,有些模块可能由同一物理实体实现,或者,有些模块可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。

Claims (9)

1.一种同时发布web service与rest服务的方法,其特征是分别在注解@WebApi中添加Web Service服务类型参数和rest服务类型参数,
通过@WebApi的注解分别指定Web Service服务和Rest服务,并启动业务应用组件,同时发布Web Service服务和Rest服务。
2.根据权利要求1所述的一种同时发布web service与rest服务的方法,其特征是在业务底层通过类加载器,遍历加载指定为@WebApi注解的业务接口,用于发布Web Service服务和Rest服务。
3.根据权利要求1或2所述的一种同时发布web service与rest服务的方法,其特征是需要发布为Web Service服务的类,指定@WebApi的注解,并标注serviceType=WebApi.Type.WS。
4.根据权利要求1或2所述的一种同时发布web service与rest服务的方法,其特征是所述需要发布为Rest服务的类,指定@WebApi的注解,并标注serviceType=WebApi.Type.REST。
5.一种同时发布web service与rest服务的系统,其特征是包括添加模块、指定模块及启动发布模块,
添加模块分别在注解@WebApi中添加Web Service服务类型参数和rest服务类型参数,
指定模块通过@WebApi的注解分别指定Web Service服务和Rest服务,启动发布模块启动业务应用组件,同时发布Web Service服务和Rest服务。
6.根据权利要求1所述的一种同时发布web service与rest服务的系统,其特征是指定模块在业务底层通过类加载器,遍历加载指定为@WebApi注解的业务接口,用于发布WebService服务和Rest服务。
7.根据权利要求1或2所述的一种同时发布web service与rest服务的系统,其特征是需要发布为Web Service服务的类,指定模块指定@WebApi的注解,并标注serviceType=WebApi.Type.WS。
8.根据权利要求1或2所述的一种同时发布web service与rest服务的系统,其特征是需要发布为Rest服务的类,指定模块指定@WebApi的注解,并标注serviceType=WebApi.Type.REST。
9.一种同时发布web service与rest服务的装置,其特征是包括至少一个存储器和至少一个处理器;
所述至少一个存储器,用于存储机器可读程序;
所述至少一个处理器,用于调用所述机器可读程序,执行权利要求1至4中任一所述一种同时发布web service与rest服务的方法。
CN202110081233.9A 2021-01-21 2021-01-21 一种同时发布web service与rest服务的方法 Pending CN112732364A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110081233.9A CN112732364A (zh) 2021-01-21 2021-01-21 一种同时发布web service与rest服务的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110081233.9A CN112732364A (zh) 2021-01-21 2021-01-21 一种同时发布web service与rest服务的方法

Publications (1)

Publication Number Publication Date
CN112732364A true CN112732364A (zh) 2021-04-30

Family

ID=75594550

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110081233.9A Pending CN112732364A (zh) 2021-01-21 2021-01-21 一种同时发布web service与rest服务的方法

Country Status (1)

Country Link
CN (1) CN112732364A (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102323884A (zh) * 2011-09-07 2012-01-18 山东中创软件工程股份有限公司 一种多Web服务发布的方法及Web服务容器
CN107769974A (zh) * 2017-10-30 2018-03-06 山东浪潮通软信息科技有限公司 一种服务发布方法及装置
CN109726021A (zh) * 2018-11-29 2019-05-07 国云科技股份有限公司 一种微服务接口定义类自发现的实现方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102323884A (zh) * 2011-09-07 2012-01-18 山东中创软件工程股份有限公司 一种多Web服务发布的方法及Web服务容器
CN107769974A (zh) * 2017-10-30 2018-03-06 山东浪潮通软信息科技有限公司 一种服务发布方法及装置
CN109726021A (zh) * 2018-11-29 2019-05-07 国云科技股份有限公司 一种微服务接口定义类自发现的实现方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
(美)尼米尔(NIEMEYER,P.)等: "《Java语言学习手册(第二版)》", 北京:中国电力出版社, pages: 29 *
田涛涛: "Web服务自动封装和发布接口的研究", 《中国优秀硕士学位论文全文数据库信息科技辑(月刊)》, no. 01, 15 July 2007 (2007-07-15), pages 1 *

Similar Documents

Publication Publication Date Title
EP3030969B1 (en) Automated application test system
US8166458B2 (en) Method and system for automated distributed software testing
US8239505B2 (en) Progressively implementing declarative models in distributed systems
US8321856B2 (en) Supplying software updates synchronously
US11163669B1 (en) Measuring test coverage during phased deployments of software updates
CN110088733A (zh) 虚拟机迁移的基于存储层的编排
US8819627B2 (en) Systems and methods for expressing temporal relationships spanning lifecycle representations
US11556348B2 (en) Bootstrapping profile-guided compilation and verification
US20070198705A1 (en) System and method for integrating resources in a network
EP3504617B1 (en) Hybrid deoptimization mechanism for class hierarchy analysis
US20120272204A1 (en) Uninterruptible upgrade for a build service engine
US10936468B1 (en) System and method of automatic software release termination based on customized reporting static code analysis
WO2018001091A1 (zh) 虚拟网络功能vnf更新方法、装置和vnf包
WO2021092502A1 (en) Just-in-time containers
US9367429B2 (en) Diagnostics of declarative source elements
CN110494849B (zh) 用于确定跨平台应用迁移的成功的系统和方法
CN114064083A (zh) 通过在配置中心自定义模板部署云原生应用的方法及应用
WO2022109932A1 (zh) 基于slurm计算平台的多任务提交系统
US20200192659A1 (en) Modular microcode (ucode) patch method to support runtime persistent update
CN112732364A (zh) 一种同时发布web service与rest服务的方法
CN111324332A (zh) 大数据任务的处理方法及系统、电子设备、存储介质
KR102066792B1 (ko) 컨테이너 오케스트레이션을 위해 TOSCA를 Docker Swarm로 변환하는 동작을 수행하는 단말 장치 및 방법과, 이를 수행하는 기록 매체
CN111367796A (zh) 应用程序调试方法及装置
EP4036720B1 (en) Hash optimized composition cache for isolated execution environments
CN114201240B (zh) 配置helm chart的方法和装置

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
CB02 Change of applicant information

Address after: 271000 Langchao science and Technology Park, 527 Dongyue street, Tai'an City, Shandong Province

Applicant after: INSPUR SOFTWARE Co.,Ltd.

Address before: No. 1036, Shandong high tech Zone wave road, Ji'nan, Shandong

Applicant before: INSPUR SOFTWARE Co.,Ltd.

CB02 Change of applicant information
RJ01 Rejection of invention patent application after publication

Application publication date: 20210430

RJ01 Rejection of invention patent application after publication