springMVC:本质上就是控制层的一个开源框架,和struts2是一个层面的
包含的核心控件为:url映射器,适配器,控制器,视图解析器,
一.接管请求:Dispatcher负责接管请求.
DispatcherServlet(就是一个Servlet) 它继承了FrameWorkServlet类,然而FrameWorkServlet又实现了Servlet接口,同时还实现了 spring的 ApplicationContextAware接口,因此DispatcherServlet拥有了设置上下文的能力。
DispatcherServlet类包含了HandlerExcutionChain属性和HandlerAdapter属性
1. HandlerExcuptionChain包含了HandlerInterceptor,主要作用是在执行具体的业务方法的前后执行注入的拦截器
2. HandlerAdapter是一个处理器的适配器,或者说是处理器的选择器
二..HandlerMapper映射器读取mvc配置文件后,根据获取的rul请求,和bean里面的name进行匹配,匹配到后返回handler对象和HandlerExcuptionChain
HandlerExcuptionChain将会执行它包含的所有的拦截器执行完后,Handler将会寻找一个相对应的HandlerAdapter适配器去执行相应的处理方法。处理完后
返回一个ModelAndView(在此对象里面可以存放要携带的数据),
三.Dispatcher获得ModelAndView后会交给UrlBasedViewResolver视图解析器,
此解析器将会解析ModelAndView,最终将解析好的界面返回DispatcherServlet,DispatcherServet将接货返回给客户端,