SpringMVC的五大组件和请求响应流程
SpringMVC的五大组件
DispatcherServlet(前置控制器):用来拦截匹配的请求,拦截匹配规则由自己定义,拦截的请求会按照规则发送给Controller处理。HandlerMapping(处理器映射器):根据匹配的请求找到对应的Controller(通过xml配置或者注解)。Controller(控制器):处理请求。ModelAndView(模型数据和逻辑视图名):用来封装数据信息和视图信息的。ViewResolver(视图处理器):根据逻辑视图名(View)定位具体JSP页面
请求响应流程
用户发送请求到前端控制器(DispatcherServlet),前端控制器接收请求,调用其他组件来处理请求,响应结果前端控制器将请求发送给处理器映射器(HandlerMapping),处理器映射器找到对应的Controller,并将Controller返回给前端控制器前端控制器根据Controller的名字调用处理器适配器(HandlerAdapter)。处理器适配器经过适配调用具体的Controller(Controller->ServiCe->DAO->DB),执行完成后返回ModelAndView给前端控制器前端控制器将ModelAndView传给视图解析器(ViewResolver),视图解析器根据View解析后返回具体的JSP页面前端控制器根据Model对View进行渲染(将数据信息填充至JSP页面),前端控制器将填充数据后的页面响应给用户