【发布时间】:2013-04-01 02:09:58
【问题描述】:
我正在将常规 Servlet 更新为 Spring 类型的 Servlet。为了实现这一点,我关注了these instructions,说我应该实现HttpRequestHandler。这很好,适用于我的 Servlet,因为现在我只使用 POST 方法调用它。
但是现在我很好奇如果我也想实现 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)
...
}
阅读official documentation它说它默认只支持POST,但找不到实现GET的方法。其他答案here 让我想到了使用可以接收 GET 请求然后调用HttpRequestHandler 的控制器,但这对我来说似乎不是很整洁。
谁能告诉我这是否可行,我该怎么做?如果可能,请参考一些文档:)
【问题讨论】:
-
文档说请求处理程序通常只处理 POST 请求,而不是它不支持 GET 请求:当你尝试它时发生了什么?
标签: java spring jakarta-ee servlets