掌握 Spring MVC 運行機制,面試應對游刃有餘。本文結合架構圖與代碼實例逐步拆解。


核心組件:DispatcherServlet(前端控制器)、HandlerMapping(處理器映射器)、HandlerAdapter(處理器適配器)、ViewResolver(視圖解析器)。
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/>Controller 接口HttpRequestHandler 接口RequestMappingHandlerAdapterpublic class UserController implements Controller {
public ModelAndView handleRequest(HttpServletRequest req, HttpServletResponse resp) {
ModelAndView mv = new ModelAndView();
mv.addObject("Hello", "鳳姐喜歡你!");
mv.setViewName("index"); // 邏輯視圖名
return mv;
}
}
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/jsps/"/> <property name="suffix" value=".jsp"/> </bean>
將邏輯視圖 index 解析為 /WEB-INF/jsps/index.jsp。
嚴格遵循 MVC 分層,核心組件職責單一,擴展性強。