クラスの実装

Java EE

ResourceConfigを継承したクラスの中で、RESTリソースクラスが存在するパッケージを指定する。

Spring

@RestControllerアノテーションを付ける

リクエスト受け付け部分

内容 Java EE Spring 備考
メソッドの指定 @GET @RequestMapping(method=RequestMethod.GET) POST/DELETE/PUTも同様
パスの指定 @Path("/path") @RequestMapping(value="/path")  
パラメータとしてのパスの指定 @Path("{id:[0-9]+}") @RequestMapping(value="{id:[0-9]+}") 可変部分は同様に{}で囲む。正規表現も使える。コロンの前後にスペースを入れてはいけません。
パス指定されたパラメータの受け付け @PathParam("id") Integer id @PathVariable(name="id") Integer id  
クエリ文字列の受け付け @QueryParam("name") String name @RequestParam(name="name",required=false) String name Springは引数なしだと400 BAD REQUESTになるので、required=falseを付けます。
リクエスト本体の受け付け とくになし。通常の引数のまま。 @RequestBodyを引数に付ける  

レスポンス出力部分

内容 Java EE Spring 備考
コンテントタイプ指定 @Produces(MediaType.APPLICATION_JSON) @RequestMapping(produces=MediaType.APPLICATION_JSON_VALUE) SpringのMediaTypeは、org.springframework.httpパッケージ
200 OKを返す。 return Response.OK.build(); void