使用 Jersey 和 Apache Tomcat 构建 RESTful Web 服务
2016-02-25 00:00
666 查看
摘要: Representational state transfer(REST)在 2000 年由 Roy Fielding 在博士论文中提出。但是,在 Java™ 社区中,直到 2008 年 JSR 311(JAX-RS) 规范定稿后才将其标准化。第一个版本的参考实现甚至更晚。在本文中,我将介绍 Jersey —— JSR 311 的参考实现,描述其必要的 API 和注释。我还将展示如何通过在 Apache Tomcat 中集成 Jersey 从 servlet 风格的服务转型到 RESTful 服务。
REST 中最重要的概念是资源(resources),使用全球 ID(通常使用 URI)标识。客户端应用程序使用 HTTP 方法(
Web 服务的基/根 URI,比如 http://host/<appcontext>/resources。
支持 MIME 类型的响应数据,包括 JSON/XML/ATOM 等等。
服务支持的操作集合(例如
表 1 演示了典型 RESTful Web 服务中使用的资源 URI 和 HTTP 方法。(参考资料 提供了有关 RESTful Web 服务的更多介绍和设计考虑事项。)
表 1. RESTful Web 服务示例
参考网址:http://www.ibm.com/developerworks/cn/web/wa-aj-tomcat/
RESTful Web 服务简介
REST 在 2000 年由 Roy Fielding 在博士论文中提出,他是 HTTP 规范 1.0 和 1.1 版的首席作者之一。REST 中最重要的概念是资源(resources),使用全球 ID(通常使用 URI)标识。客户端应用程序使用 HTTP 方法(
GET/ POST/ PUT/ DELETE)操作资源或资源集。RESTful Web 服务是使用 HTTP 和 REST 原理实现的 Web 服务。通常,RESTful Web 服务应该定义以下方面:
Web 服务的基/根 URI,比如 http://host/<appcontext>/resources。
支持 MIME 类型的响应数据,包括 JSON/XML/ATOM 等等。
服务支持的操作集合(例如
POST、GET、PUT或
DELETE)。
表 1 演示了典型 RESTful Web 服务中使用的资源 URI 和 HTTP 方法。(参考资料 提供了有关 RESTful Web 服务的更多介绍和设计考虑事项。)
表 1. RESTful Web 服务示例
方法/资源 | 资源集合, URI 如 :http://host/<appctx>/resources | 成员资源,URI 如: http://host/<appctx>/resources/1234 |
GET | 列出资源集合的所有成员。 | 检索标识为 1234 的资源的表示形式。 |
PUT | 使用一个集合更新(替换)另一个集合。 | 更新标记为 1234 的数字资源。 |
POST | 在集合中创建数字资源,其 ID 是自动分配的。 | 在下面创建一个子资源。 |
DELETE | 删除整个资源集合。 | 删除标记为 1234 的数字资源。 |
相关文章推荐
- PHP编写RESTful接口的方法
- Restful传递数组参数及注解大全
- 基于Java中两种jersey文件上传方式
- SpringMVC restful 注解之@RequestBody进行json与object转换
- 基于JAVA中Jersey处理Http协议中的Multipart的详解
- PHP实现自动识别Restful API的返回内容类型
- python模块restful使用方法实例
- Jersey服务中文乱码解决方法
- 极简的Restful框架推荐->Resty(服务端+客户端)
- Java Jersey使用總結
- PHP实现Restful风格的API
- springmvc中关于cacheManager的异常
- Django REST framework的各种技巧——1.基础讲解
- Django REST framework的各种技巧——2.serializer
- Django REST framework的各种技巧——3.权限
- Django REST framework的各种技巧——4.Generic View
- Django REST framework的各种技巧——6.异常处理
- 理解HTTP幂等性
- 在Jersey JAX-RS 处理泛型Collection