@GET:該註解標記的方法代表用於處理GET請求,GET方法是冪等且安全的。java
@POST:該註解標記的方法代表處理POST請求,POST方法代表是一種建立操做的方法,POST方法是一種寫操做的HTTP請求,RPC中的寫操做均是使用post方法,而在REST中咱們只是使用POST方法來添加資源。spring
@DELETE:該註解標記的方法代表這個方法執行的是一個刪除資源的操做,其返回值能夠是void,即沒有返回值。json
@Consumes:在服務器端,@Consumes(MediaType.APPLICATION_XML)定義了服務器端要消費的媒體類型,也就是說消費客戶端請求實體的媒體類型,能夠是xml、json等類型。數組
@Produces:@Consumes(MediaType.APPLICATION_XML)定義了服務器端生產的媒體類型,即服務器端產生的響應實體的媒體類型,一樣也能夠是xml、json等媒體類型。安全
@Path:該註解能夠標記在類名之上,也能夠標記在方法名上。該註解接收一個value參數,表示定義資源的地址。另外,資源地址相同,可是HTTP方法不一樣的兩個方法是徹底兩個不一樣的REST接口,HTTP方法和資源地址相結合在一塊兒才能夠完成對一個資源的定位。服務器
package com.zte.ems.resource; import javax.servlet.http.HttpServletRequest; import javax.ws.rs.GET; import javax.ws.rs.POST; import javax.ws.rs.Path; import javax.ws.rs.core.Context; import org.springframework.stereotype.Component; @Component @Path("/weclome") public class JerseyResource { @GET @Path("/wrong") public void getPage(@Context HttpServletRequest request) { System.out.println("這是一個get方法!"); } @POST @Path("/wrong") public void postPage(@Context HttpServletRequest request) { System.out.println("這是一個post方法!"); } }
以上面這個類爲例,雖然@Path的組合是"/weclome/wrong",可是因爲HTTP方法不一樣,所以,執行的方法體也是不一樣的。post
@QueryParam:該註解代表是一個查詢條件,查詢條件決定了方法的做用域,查詢參數組成了查詢條件。Jersey中使用@QueryParam註解來定義查詢參數。另外註解@QueryParam還能夠和註解@DefaultVaule一塊兒使用,註解@DefaultValue的做用則是預置一個默認值,當請求中不包括該參數時候使用這個默認值。spa
@PathParam:該註解定義路徑的參數信息,每個參數都對應一個子資源。code
@FormParam:該註解表示用來定義表單的參數。orm
@Context:該註解用來解析上下文參數。(@Context HttpRequest request)