1,SpringMvc运行原理
1>,http请求:客户请求提交到DispatcherServlet
2>,寻找处理器:由DispatcherServlet控制器查询一个或多个HandlerMapping,找到处理请求的Controller
3>,调用处理器:DispatcherServlet将请求提交到Controller
4>,5>,调用业务处理和返回结果:Controller调用业务逻辑处理后,返回ModelAndView
6>,7>,处理视图映射并返回模型:DispatcherServlet查询一个或者多ViewResoler视图解析器,找到ModeAndView指定的视图
8>,http响应:视图负责将结果显示到客户端
2,SpringMvc接口解释
1>,DispatcherServlet接口:Spring提供的前端控制器,也是总控制器
2>,HandlerMapping接口:完成Controller映射
3>,Controller接口:必须在线程安全情况下使用,为http请求处理过程中的控制器,处理完请求,则返回ModelAndView对象给DispatcherServlet
4>,ViewResolver接口:Spring提供的视图解析器,在web应用中查找View对象,从而将相应结果渲染给客户
3,DispatcherServlet
1>,截获URL请求
2>,初始化DispatcherServlet上下文对应的webApplicationContext,与业务持久层的webApplicationContext建立关联
3>,初始化SpringMvc的各个组件,并装配到DispatcherServlet中
4,web.xml文件中的<url-pattern> (对应@RequestMapping)
1>,/ 拦截所有
2>,*.action 加后缀
5,web.xml文件中加<init-param>可修改dispatchServlet-Servlet.xml名称和位置
例如将名称修改为sprigmvc.xml并放到src目录下
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:sprigmvc.xml</param-value>
</init-param>
6,@RequestMapping
1>,映射url请求
2>,可在类和方法前使用