第 46 章 创建资源

摘要

在 RESTful Web 服务中,所有请求都由资源处理。JAX-RS API 将资源实施为 Java 类。资源类是 Java 类,带有一个或多个 JAX-RS 注释标注。使用 JAX-RS 实施的 RESTful Web 服务的核心是根资源类。根资源类是服务所公开的资源树的入口点。它可以处理所有请求本身,也可能提供对处理请求的子资源的访问权限。

46.1. 简介

概述

使用 JAX-RS API 实施的 RESTful Web 服务以 Java 类实施的资源表示提供响应。资源类 是使用 JAX-RS 注释来实施资源的类。对于大多数 RESTful Web 服务,需要访问一组资源。资源类的注解提供资源 URI 和每个操作处理的 HTTP 动词等信息。

资源类型

JAX-RS API 允许您创建两个基本类型的资源:

  • 第 46.3 节 “根资源类” 是服务的资源树的入口点。它通过 @Path 注释进行解码,以定义服务中资源的基本 URI。
  • 第 46.5 节 “使用子资源” 可通过 root 资源访问。它们通过利用 @Path 注释分离的方法实现。子资源的 @Path 注释定义相对于根资源的基本 URI 的 URI。

示例

例 46.1 “简单资源类” 显示一个简单资源类。

例 46.1. 简单资源类

package demo.jaxrs.server;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;

@Path("/customerservice")
public class CustomerService
{
  public CustomerService()
  {
  }

  @GET
  public Customer getCustomer(@QueryParam("id") String id)
  {
    ...
  }

  ...
}

两个项目使 例 46.1 “简单资源类” 中定义的类为资源类:

@Path 注释指定资源的基本 URI。

@GET 注释指定方法为资源实施 HTTP GET 方法。