トップQs
タイムライン
チャット
視点

JAX-RS

ウィキペディアから

Remove ads

JAX-RS (Java API for RESTful Web Services) は、RESTアーキテクチャに基づくWebサービスのための機能を提供するJava言語のAPIである。[1] JAX-RSはJava SE 5で導入されたアノテーションの仕組みを用いて、シンプルな開発を実現する。

JAX-RSは、2009年にリリースされたJava EE 6においてバージョン1.1が仕様の一つとして取り込まれており、Java EEの標準仕様の一つとなっている。Java EE以外の環境においても、例えばWebアプリケーションの設定ファイルであるweb.xmlに登録することで、利用可能である。2013年5月に公開されたバージョン2.0は、クライアントAPIやフィルタといった機能が追加されており、Java EE 7に含まれている[2]

Remove ads

仕様

JAX-RSは、リソースクラスPOJOのJavaクラス)をWebリソースにマッピングするのを助けるアノテーションを提供する。アノテーションの例を以下に示す。

  • @Path : リソースクラスやメソッドに相対的なパスを指定する。
  • @GET, @PUT, @POST, @DELETE, @HEAD : HTTPメソッドの種別を指定する。
  • @Produces : レスポンスContent-Typeを指定する。
  • @Consumes : リクエストで受け入れ可能なContent-Typeを指定する。

加えて、リクエストからメソッドの引数に情報を読み込むためのアノテーションも提供している。これらの@*Paramアノテーションは必要な値を取得するためにキーを要求する。

  • @PathParam : パスとメソッド引数を紐付ける。
  • @QueryParam : HTTPのクエリとメソッド引数を紐付ける。
  • @MatrixParam : HTTPのマトリックスパラメータとメソッド引数を紐付ける。
  • @HeaderParam : HTTPヘッダーとメソッド引数を紐付ける。
  • @CookieParam : HTTP cookieとメソッド引数を紐付ける。
  • @FormParam : フォームの値とメソッド引数を紐付ける。
  • @DefaultValue : 上記のキーが存在しない場合のデフォルト値を指定する。
  • @Context : 全体のコンテキストを返す(例 @Context HttpServletRequest request)。
Remove ads

実装

JAX-RS自体はAPIであり、実際の実装として下記のようなものがある。[3]

脚注

参考文献

外部リンク

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads