第46章 リソースの作成


概要

RESTful Web サービスでは、すべての要求はリソースによって処理されます。JAX-RS API は、リソースを Java クラスとして実装します。リソースクラスは、Java クラスで、1 つ以上の JAX-RS アノテーションが付けられます。JAX-RS を使用して実装された RESTful Web サービスのコアは、ルートリソースクラスです。ルートリソースクラスは、サービスによって公開されるリソースツリーへのエントリーポイントです。すべての要求自体を処理する場合もあれば、要求を処理するサブリソースにアクセスできるようにする場合もあります。

46.1. はじめに

概要

JAX-RS API を使用して実装された RESTful Web サービスは、Java クラスによって実装されたリソースの表現として応答します。リソースクラス は、JAX-RS アノテーションを使用してリソースを実装するクラスです。ほとんどの RESTful Web サービスには、アクセスする必要のあるリソースのコレクションがあります。リソースクラスのアノテーションは、リソースの URI や各操作が処理する HTTP 動詞などの情報を提供します。

リソースの種類

JAX-RS API を使用すると、基本的なリソースタイプを 2 つ作成できます。

  • 「ルートリソースクラス」 サービスのリソースツリーへのエントリーポイントです。@Path アノテーションが付けられ、サービスのリソースのベース URI を定義します。
  • 「サブリソースの操作」 には、ルートリソースを使用してアクセスします。これらは、@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)
  {
    ...
  }

  ...
}

2 つの項目で、例46.1「単純なリソースクラス」 リソースクラスにクラスが定義されます。

@Path アノテーションは、リソースのベース URI を指定します。

@GET アノテーションは、メソッドがリソースの HTTP GET メソッドを実装することを指定します。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.