SpringMVC 是 Spring Framework 的後續產品,已融合進 Spring Web Flow。它提供全功能的 MVC 模塊,功能類似 Struts2、Struts1,但實現原理不同:Struts2 基於過濾器,而 SpringMVC 和 Struts1 均基於 Servlet 封裝。

請求流向:客戶端 → DispatcherServlet → HandlerMapping → Controller → Service → ModelAndView → ViewResolver → 視圖渲染 → 響應客戶端
springMVC org.springframework.web.servlet.DispatcherServlet contextConfigLocation /WEB-INF/springMVC-servlet.xml 1 springMVC *.html
public class HelloWorldController implements Controller {
public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
// 接收數據、調用服務層、判斷結果
return new ModelAndView("success", "username", "zhangsan");
// 解析為 /WEB-INF/jsp/spring/success.jsp
}
}
SpringMVC 搭建核心在於:核心控制器、映射配置、對應 Controller、攔截器擴展。通過與 Struts2 對比學習,能更深刻理解 MVC 本質。