簡體   English   中英

如何使用Servlet創建RESTful Web服務(沒有Jersey等)?

[英]How to create a RESTful Web Service using Servlet (without Jersey, etc)?

如何在不使用任何JAX-RS實現(Jersey等)的情況下使用Servlet創建RESTful Web服務?

基本上你絕對正確,你不需要一個框架來實現REST API。

例如,您可以在簡單的servlet類中執行基本的crud操作,如下所示:

@WebServlet(urlPatterns = "/book/*")
public class BookServlet extends HttpServlet {
   @Override
   public void doGet(HttpServletRequest request, HttpServletResponse response) {
     // fetch from db
   }
   @Override
   public void doPost(HttpServletRequest request, HttpServletResponse response) {
     //update
   }
   @Override
   public void doDelete(HttpServletRequest request, HttpServletResponse responce) {
    //delete
   }
}

這有點不方便,因為你需要手動解析url params,進行序列化,但是在引擎蓋下,JAXRS和Spring MVC只是一個servlets! 所以,如果您不想在代碼中使用依賴項,我可以建議在servlet api上實現一些方便的包裝器。

提示:您可以從請求中解析路徑參數,如下所示:

String info = request.getPathInfo(); 
String[] parts = pathInfo.split("/");
String param1 = pathInfo[0];

所以,例如,如果您有這樣的請求:HTTP GET / book / {id}您將在param1中獲得{id},稍后可以在數據庫查找中使用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM