REST Service 开发 - Quick Start
【摘要】本文简单介绍了基于 CXF 的 RESTful 服务的开发,和基于模板技术 Feign 的服务客户端的开发。
他们都是开发云服务的常用工具。重点是定义服务到 HTTP 的映射,其中 CXF 使用 JAX-RS 标准,
Feign 则是使用 retrofit 模板实现到 HTTP 的映射。
1、 REST 服务简介
RESTful service是一种架构模式,它的轻量级 web 服务,发挥 HTTP 协议的原生的GET,PUT,POST,DELETE。近几年,随着云服务技术的发展,其简单方便、易于理解和扩展,一举超越 SOAP 协议,
成为事实的 Web 服务标准。
Web 服务开发及其简单,就是定义接口,利用工具发布服务;客户端也是定义接口,利用工具生成通讯代理;HTTP 协议作为通讯工具。
2、 创建服务 - -快速开始
创建 java REST 服务的标准是 JAX-RS 2.0。它是一个语义标注集合,实现了服务接口与
HTTP 协议的映射。 CXF,jersey 等则是程序框架,实现了 JAX-RS 定义的标注语义,
并实现在不同 web 容器内的服务发布。本部分以 CXF 为案例:
1. 创建一个空项目
使用 Intellij 或 mvn 创建 maven-archetype-quickstart 为原型的项目。
2. 修改 pom.xml
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<cxf.version>3.1.10</cxf.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<!-- CXF 转 jaxrs 转 http 绑定 jetty -->
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxrs</artifactId>
<version>${cxf.version}</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifa