0
如何在不使用任何JAX-RS實現(Jersey等)的情況下使用Servlet創建RESTful Web服務?如何使用Servlet創建RESTful Web服務(不包括Jersey等)?
如何在不使用任何JAX-RS實現(Jersey等)的情況下使用Servlet創建RESTful Web服務?如何使用Servlet創建RESTful Web服務(不包括Jersey等)?
基本上你絕對正確,你不需要一個框架來實現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
}
}
這是一個有點不方便,因爲你需要手工解析網址參數,做到系列化,但引擎蓋下, JAXRS和Spring MVC只是一個servlets! 所以,如果你不想在你的代碼中存在依賴關係,我可以建議只通過servlet api實現一些方便的包裝。
提示:你可以從請求解析路徑參數是這樣的:
String info = request.getPathInfo();
String[] parts = pathInfo.split("/");
String param1 = pathInfo[0];
所以,舉例來說,如果你有這樣的要求: HTTP GET /電子書/ {ID} 你會得到{在param1中可以稍後用於數據庫查找。