2013-04-09 132 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

相关问题