我将 Spring MVC 控制器用于 REST 服务。我想覆盖 DispatcherServlet 的 GET 和 POST 行为。我想在 GET 和 POST 请求期间满足某些条件时执行一些自定义逻辑,否则回退到 DispatcherServlet 实现。
我实现了派生自 Spring 的 DispatcherServlet 的自定义 serlvet。HttpServlet 接口上有 doGet() 和 doPost() 方法,但似乎这些方法已在 DispatcherServlet 或其基类之一中声明为 final。因此我无法覆盖 doGet() 和 doPost()。
从文档中,我想出了两种可以被覆盖的方法——doService() 和 doDispatch()。我对这两种方法之间的区别感到困惑。
- 我应该覆盖哪种方法 - doService() 或 doDispatch()?
- doService() 和 doDispatch() 有什么区别?
- 如何确定什么 http 请求 - GET 或 POST 它是什么?
谢谢。