WebServiceCXF与Restful架构风格简介

96
七里香今天更新文章了吗
2018.07.01 22:26 字数 841

什么是WebService

  • 简单的说,WebService是一种多系统之间通信的技术.
  • WebService是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。
  • 很多个系统,进行分布的部署,分布的系统之间的数据通信,解决技术就是WebService

什么是CXF

  • Apache CXF = Celtix + XFire,开始叫 Apache CeltiXfire,后来更名为 Apache CXF 了,以下简称为 CXF。CXF 继承了 Celtix 和 XFire 两大开源项目的精华,提供了对 JAX-WS 全面的支持,并且提供了多种 Binding 、DataBinding、Transport 以及各种 Format 的支持,并且可以根据实际项目的需要,采用代码优先(Code First)或者 WSDL 优先(WSDL First)来轻松地实现 Web Services 的发布和使用。Apache CXF已经是一个正式的Apache顶级项目。官网:http://cxf.apache.org/

为什么用WebServiceCXF

  • CXF是目前最主流WebService开发框架,由Apache提供
  • CXF WebService开发,主要分为两种服务提供方式WS、RS

两种传输数据的方式

  • JAX-WS 传输数据:就是XML格式,基于SOAP协议(Simple Object Access protocol,简单对象访问协议)
  • JAX-RS传输数据: 基于restFul风格,可以传输XML格式或者JSON格式,基于HTTP协议

什么是Restful风格

  • Restful风格是一种软件设计架构风格,而不是一套标准,只是提供了一组设计原则和约束条件.它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。
  • 在服务器端,应用程序状态和功能可以分为各种资源。资源是一个有趣的概念实体,它向客户端公开。资源的例子有:应用程序对象、数据库记录、算法等等。每个资源都使用 URI (Universal Resource Identifier) 得到一个唯一的地址。所有资源都共享统一的接口,以便在客户端和服务器之间传输状态。使用的是标准的 HTTP 方法,比如 GET、PUT、POST 和 DELETE。

Restful风格好处

  • 基于这种风格架构,软件编写可以更简洁
  • 基于HTTP协议,支持多种消息格式,比如XML、JSON
  • 可提供OpenAPI,便于第三方系统集成,提高互操作性
  • 资源描述与视图的松耦合
  • 强调HTTP应当以资源为中心,并且规范了资源URI的风格
  • 规范了HTTP请求动作(PUT,POST等)的使用,具有对应的语义

Restful根据请求方式的不同执行不同的操作

POST请求方式访问 保存操作(增,英文:Create)
DELETE请求方式访问 删除操作(删,英文:Delete)
PUT 请求方式访问 修改操作(改,英文:Update)
GET请求方式访问 查询操作(查,英文:Retrieve)

webservice
Web note ad 1