メソッドに対するPathアノテーション
【サンプルコード】
[サービスクラス]
package jp.glory.ui.service; import javax.ws.rs.GET; import javax.ws.rs.POST; import javax.ws.rs.Path; @Path("uri") public class UriSample { @GET @Path("hoge") public String hogeMethod() { return "Get/Hoge"; } @GET @Path("foo") public String fooMethod() { return "Get/Foo"; } @POST @Path("foo") public String varMethod() { return "Post/Foo"; } }
今回は各メソッドにPathアノテーションをつけています。
それぞれのメソッドのURLは下の表のようになります。
メソッド | URL |
---|---|
hogeMethod | http://localhost:8080/{context}/{service}/uri/hoge |
fooMethod | http://localhost:8080/{context}/{service}/uri/foo |
varMethod | http://localhost:8080/{context}/{service}/uri/foo |
{context}部分は各コンテキスト名が入ります。
{service}部分はApplicationPathアノテーションの値。
foooMethodとvarMethodは同じURLですが、
POSTとGETで実行されるメソッドが切り替わります。
[実行するためのページ]
<html> <head> <title>JAX-RSサンプル</title> </head> <body> <form action="http://localhost:8080/sample/service/uri/hoge" method="get"> <input type="submit" value="GET HOGE"/> </form> <form action="http://localhost:8080/sample/service/uri/foo" method="get"> <input type="submit" value="GET FOO"/> </form> <form action="http://localhost:8080/sample/service/uri/foo" method="post"> <input type="submit" value="POST FOO"/> </form> </body> </html>