| 來(lái)源:http://jackyrong./blog/1128364 1 先來(lái)看@queryparam 先看例子:
 
 
Java代碼     Path("/users")  public class UserService {         @GET      @Path("/query")      public Response getUsers(          @QueryParam("from") int from,          @QueryParam("to") int to,          @QueryParam("orderBy") List<String> orderBy) {             return Response             .status(200)             .entity("getUsers is called, from : " + from + ", to : " + to              + ", orderBy" + orderBy.toString()).build();         }     }  
 URL輸入為:users/query?from=100&to=200&orderBy=age&orderBy=name
 此時(shí),輸出為:
 getUsers is called, from : 100, to : 200, orderBy[age, name]
 要注意的是,跟@pathparam不同,@queryparam
 中,指定的是URL中的參數(shù)是以鍵值對(duì)的形式出現(xiàn)的,而在程序中
 @QueryParam("from") int from則讀出URL中from的值,
 而@pathparem中,URL中只出現(xiàn)參數(shù)的值,不出現(xiàn)鍵值對(duì),比如:
 “/users/2011/06/30”
 
 則:
 
 
Java代碼     @GET      @Path("{year}/{month}/{day}")      public Response getUserHistory(              @PathParam("year") int year,              @PathParam("month") int month,               @PathParam("day") int day) {            String date = year + "/" + month + "/" + day;            return Response.status(200)          .entity("getUserHistory is called, year/month/day : " + date)          .build();         }  
 輸出為:
 getUserHistory is called, year/month/day : 2011/6/30
 
 2 以動(dòng)態(tài)的方式獲得:
 
 
Java代碼     @Path("/users")  public class UserService {         @GET      @Path("/query")      public Response getUsers(@Context UriInfo info) {             String from = info.getQueryParameters().getFirst("from");          String to = info.getQueryParameters().getFirst("to");          List<String> orderBy = info.getQueryParameters().get("orderBy");             return Response             .status(200)             .entity("getUsers is called, from : " + from + ", to : " + to              + ", orderBy" + orderBy.toString()).build();         }     
 
 URL;users/query?from=100&to=200&orderBy=age&orderBy=name
 輸出為:
 getUsers is called, from : 100, to : 200, orderBy[age, name]
 注意這里把orderby后的兩個(gè)參數(shù)讀入為L(zhǎng)IST處理了.
 
 
 3 @DefaultValue,默認(rèn)值
 
 例子:
 
 
Java代碼     @Path("/users")  public class UserService {         @GET      @Path("/query")      public Response getUsers(          @DefaultValue("1000") @QueryParam("from") int from,          @DefaultValue("999")@QueryParam("to") int to,          @DefaultValue("name") @QueryParam("orderBy") List<String> orderBy) {             return Response             .status(200)             .entity("getUsers is called, from : " + from + ", to : " + to              + ", orderBy" + orderBy.toString()).build();         }  
 
 URL:users/query
 輸出:getUsers is called, from : 1000, to : 999, orderBy[name]
 |