IBM JAX-RS 概述

Java™ API for RESTful Web Services (JAX-RS) 是一种编程模型,它提供一种机制来开发遵循具象状态传输 (REST) 原则的服务。 通过使用 JAX-RS,可以简化 RESTful 服务的开发。

JAX-RS 是接口和 Java 注释的集合,用于简化服务器端 REST 应用程序的开发。 通过使用 JAX-RS 技术,REST 应用程序比其他类型的分布式系统更易于开发、使用和伸缩。 此产品支持用于开发基于 REST 的服务的 Java API。 JAX-RS 的 IBM® 实现提供 JAX-RS 规范的实现。

要使用 IBM JAX-RS 开发 RESTful 服务,假定您熟悉基本 REST 原则以及标准技术 (例如 HTTP 和 XML) 的基本知识。

REST 和 JAX-RS

具象状态传输 (REST) 是一种使用了多种标准技术(例如 HTTP、XML、ATOM 和 HTML)的架构样式。 REST 用来定义基于资源表示法的灵活应用程序。 资源仅仅是任何要在 Web 上共享的数据,您可以通过统一资源标识 (URI) 来标识该数据。

JAX-RS 是由 Java Community Process 中的 JSR-311 定义的规范。 JAX-RS 提供的一些关键功能部件包括:
  • 一组用于声明资源类及其所支持数据类型的注释
  • 一组允许应用程序开发者访问运行时上下文的接口
  • 用于集成定制内容处理程序的可扩展框架
Apache Wink 和 JAX-RS 的 IBM 实现

Wink 是在 Apache Software Foundation 中开发的项目,它提供了用于开发 RESTful 应用程序的轻量级框架。 Wink 支持通过使用 JAX-RS 描述服务器上的资源来实现的 REST 服务。 但是,Wink 也提供了客户机 API。 由于不存在 JAX-RS 定义的客户机 API,因此,此客户机 API 特定于 Wink 运行时环境。

JAX-RS 的 IBM 实现是基本 Wink 1.1 运行时环境的扩展。 IBM JAX-RS 包含以下功能部件:
  • JAX-RS 1.1 服务器运行时
  • 可选择将 Apache HttpClient 4.0 用作底层客户机的独立客户机 API
  • 对 JSON4J 的内置实体提供程序支持
  • 除了支持 Apache Abdera 以外,还支持 Atom JAXB 模型
  • 多重部件内容支持
  • 一个处理程序系统,用于将用户处理程序集成到请求和响应的处理中
现在,您已准备好开始了解有关使用 IBM JAX-RS 实现 RESTful 服务的更多信息。
  • 要获取有关如何快速获得一个能够正常运行的 JAX-RS Web 应用程序的示例,请参阅入门文档。
  • 要了解 JAX-RS 应用程序的规划注意事项,请参阅 规划以使用 JAX-RS 来启用 RESTful 服务 文档。
  • 要了解有关开发,打包和部署 JAX-RS Web Service 的更多信息,请参阅 实现 JAX-RS Web 应用程序文档。 另外,我们还提供了其他信息以说明如何实现使用 XML、JSON 或 Atom 内容格式的 JAX-RS Web 应用程序。