SpringBoot开发——实现webservice服务端和客户端
文章目录
- 1.WebService介绍
-
- 1.1. 类型
- 1.2. 架构
- 1.3. Web服务标准和技术
- 2、服务端和客户端示例
-
- 2.1. 添加依赖
- 2.2. 实现WebService服务端
-
- 2.2.1 定义接口
- 2.2.2 实现接口
- 2.2.3 配置并启动服务
- 2.3. 实现WebService客户端
大家工作多年,在工作上难免不了和传统企业打交道,而这样的企业往往还在用webservice
做接口交互。这就需要我们去实现其连通接口。
那么下面我们来介绍下如何实现服务端和客户端。
1.WebService介绍
1.1. 类型
Web服务
通常分为两种主要类型:
• SOAP Web服务
:基于SOAP(Simple Object Access Protocol)协议
的Web服务
。SOAP
是一种用于交换结构化信息的协议,它使用XML
作为消息格式,并通常通过HTTP协议
进行传输。
• RESTful Web服务
:基于REST(Representational State Transfer)
原则的Web服务
。RESTful
服务使用标准的HTTP方法
(如GET
、POST
、PUT
、DELETE
)来执行操作,并通常返回JSON
或XML格式
的数据。
1.2. 架构
Web服务
的架构通常包括以下关键组件:
• 服务提供者(Service Provider
):提供Web服务
的实体。它们发布服务并处理来自客户端的请求。
• 服务请求者(Service Requestor
):使用Web服务
的客户端应用程序。它们向服务提供者发送请求并处理响应。
• 服务描述(Service Description
):Web服务
的描述文件,通常使用WSDL
(Web Services Description Language
)或OpenAPI
等格式来描述服务的接口和操作。
• 消息格式(Message Format
):Web服务
使用的数据交换格式,通常是XML
或JSON
。
• 通信协议(Communication Protocol
):Web服务
之间通信的协议,常见的包括HTTP
、HTTPS
、`SMTP等。
1.3. Web服务标准和技术
一些常见的Web服务
标准和技术包括:
• SOAP(Simple Object Access Protocol)
:用于构建基于XML
的Web服务
的协议。
• WSDL(Web Services Description Language)
:用于描述Web服务
的接口和操作的XML格式
的语言。
• UDDI(Universal Description, Discovery, and Integration)
:用于注册和发现Web服务
的协议和规范。
• REST(Representational State Transfer)
:一种基于HTTP协议
的软件架构风格,用于构建RESTful Web
服务。
• JSON(JavaScript Object Notation)
:一种轻量级的数据交换格式,通常用于RESTful Web服务
的数据格式。
在Spring Boot
项目中,一般使用Apache CXF
(一个流行的开源服务框架,支持多种协议如SOAP/REST
)来实现WebService
服务端和客户端。
通过cxf-spring-boot-starter-jaxws
这个starter
来简化配置。
下面将详细介绍如何使用这个starter
来分别实现WebService
的服务端和客户端。
2、服务端和客户端示例
WebService服务端
是以远程接口为主的,在Java
实现的WebService
技术里主要依靠CXF开发框架
,而这个CXF开发框架
可以直接将接口发布成WebService
。
2.1. 添加依赖
首先,在你的Spring Boot项目
的pom.xml
中添加cxf-spring-boot-starter-jaxws
依赖。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web-services</artifactId>
</dependency>
<!-- WebService -->
<dependency>
<groupId>org.apache.cxf</groupId>