MyEclipse開發Rest服務入門
阿新 • • 發佈:2019-01-02
MyEclipse支援Rest服務,開發起來非常方便,下面我就舉一個計算機的例子:
實現功能:加、減、乘、除;
效果如下:
Rest服務要點:每個服務或任何東西都有一個URI;
效果如下:
Rest服務要點:每個服務或任何東西都有一個URI;
步驟1:建立Web Service Project;
步驟2:建立class
package org.xiazdong.service; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import com.sun.jersey.spi.resource.Singleton; @Produces("text/plain") @Path("calculator") @Singleton public class MyService { @GET //設定此服務為get請求的服務 @Path("add/{id}") //FirstRest/calculator/add/1+1 public String add(@PathParam("id") String s){ String[]ss = s.split("\\+"); return s+"="+String.valueOf(Integer.parseInt(ss[0])+Integer.parseInt(ss[1])); } @GET @Path("sub/{id}") //FirstRest/calculator/add/1-1 public String sub(@PathParam("id") String s){ String[]ss = s.split("\\-"); return s+"="+String.valueOf(Integer.parseInt(ss[0])-Integer.parseInt(ss[1])); } @GET @Path("mult/{id}") //FirstRest/calculator/add/1*1 public String mult(@PathParam("id") String s){ String[]ss = s.split("\\*"); return s+"="+String.valueOf(Integer.parseInt(ss[0])*Integer.parseInt(ss[1])); } @GET @Path("div/{id}") //FirstRest/calculator/add/1~1 public String div(@PathParam("id") String s){ String[]ss = s.split("~"); return s+"="+String.valueOf(Integer.parseInt(ss[0])/Integer.parseInt(ss[1])); } }
@POST //設定此服務為post請求的服務
@Path("add")
public String add(@FormParam("tt") String s){ //tt為表單的textfield的name
String[]ss = s.split("\\+");
return s+"="+String.valueOf(Integer.parseInt(ss[0])+Integer.parseInt(ss[1]));
}
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
REST和RPC之間的區別。
- REST強調資源有唯一的URI;而RPC更加強大過程(動詞),由統一的介面來呼叫它們。
- REST迴歸HTTP最初的設計;RPC僅僅只是把HTTP作為傳輸協議來使用。
- REST是由超文字驅動的;RPC是由方法驅動的。
- REST強調HTTP通訊的語義可見性,通過訊息頭和標準的HTTP方法來體現;RPC把語義封裝在HTTP訊息體中。