46.2. 基本 JAX-RS 注解


概述

RESTful Web 服务实施需要的最基本信息有:

  • 服务资源的 URI
  • 类的方法如何映射到 HTTP 动词

JAX-RS 定义了一组提供这一基本信息的注解。所有资源类都必须包含这些注解之一。

设置路径

@Path 注释指定资源的 URI。该注解由 javax.ws.rs.Path 接口定义,它可用于推断一个资源类或资源方法。它取字符串值作为其仅有的参数。字符串是一个 URI 模板,用于指定已实施资源的位置。

URI 模板指定资源的相对位置。如 例 46.2 “URI 模板语法” 所示,模板可以包含以下内容:

  • 未处理的路径组件
  • { }括起的参数标识符

    注意

    参数标识符可以包含正则表达式,用于更改默认路径处理。

例 46.2. URI 模板语法

@Path("resourceName/{param1}/../{paramN}")

例如,URI 模板 小部件/{color}/{number} 映射到 widgets/blue/12color 参数的值被分配给 蓝色number 参数的值被分配 12

URI 模板如何映射到完整的 URI,它取决于 @Path 注释是减弱的。如果将其放置在根资源类中,则 URI 模板是树中所有资源的根 URI,并将其直接附加到从中发布服务的 URI。如果注解分离一个子资源,它相对于 root 资源 URI。

指定 HTTP 动词

JAX-RS 使用五个注释来指定将用于方法的 HTTP 动词:

  • javax.ws.rs.DELETE 指定该方法映射到 DELETE
  • javax.ws.rs.GET 指定该方法映射到 GET
  • javax.ws.rs.POST 指定方法映射到 POST
  • javax.ws.rs.PUT 指定方法映射到 PUT
  • javax.ws.rs.HEAD 指定该方法映射到 HEAD

当您将方法映射到 HTTP 动词时,您必须确保映射有意义。例如,如果您映射旨在提交采购订单的方法,您可以将其映射到 PUTPOST。将它映射到 GETDELETE 会导致无法预计的行为。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.