2013-04-09 131 views
2

我正在更新一個普通的Servlet到Spring類Servlet。爲了完成這個,我跟着these instructions說我應該實現HttpRequestHandler。這很好,適用於我的Servlet,因爲現在我只使用POST方法調用它。Servlet到Spring Servlet:是否可以使用Spring的HttpRequestHandler實現GET方法?

但現在我很好奇如果我想實現GET方法會發生什麼。在一個普通的Servlet我:

public class MyServlet extends HttpServlet { 

protected void processRequest(HttpServletRequest request, HttpServletResponse response) 
... 
protected void doGet(HttpServletRequest request, HttpServletResponse response) 
... 
protected void doPost(HttpServletRequest request, HttpServletResponse response) 
... 

} 

但是實現HttpRequestHandler當我有:

public class MyServlet implements HttpRequestHandler { 
... 
    public void handleRequest(HttpServletRequest request, HttpServletResponse response) 
... 
} 

閱讀它說,它僅支持POST默認,但不能找到一種方法來實現official documentation得到。其他答案here給了我一個使用控制器的想法,該控制器可以接收GET請求,然後調用HttpRequestHandler,但這對我來說看起來並不是很整潔。

任何人都可以告訴我,如果這是可能的,我該怎麼做?如果可能的話參考一些文檔:)

+0

該文檔說,請求處理程序通常只處理POST請求,而不是它不支持GET請求:當您嘗試時發生了什麼? – 2013-05-06 18:04:31

回答

0

這只是一個猜測,但不能只是使用請求參數來確定方法,並在handleRequest方法中進一步採取行動?

+0

我沒有嘗試過......聽起來不錯。我會嘗試並讓你知道。 – 2013-05-06 18:23:04

+0

提及HttpServletRequest.getMethod()函數或使用它顯示代碼,以使您的答案爲__explicit__。 – 2013-05-07 09:49:04

相關問題