1:springMVC工作原理
springMVC架构.png
【用户发送请求到前端控制器dispatcherservlet,前端控制器接收到请求之后调用处理器映射器,根据请求url找到具体的处理器,生成处理器对象返回给前端控制器,前端控制器通过处理器适配器调用处理器,执行处理器返回ModelAndView,处理器适配器将ModelAndView返回给前端控制器,前端控制器将ModelAndView传递给视图解析器,视图解析器解析后返回具体的view,前端控制器对view进行渲染视图后响应给用户】
1、用户发送请求至前端控制器DispatcherServlet
2、DispatcherServlet收到请求调用HandlerMapping处理器映射器。
3、处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。【此时处理器映射器返回的处理器对象包含:包名+类名+方法名】
4、DispatcherServlet通过HandlerAdapter处理器适配器调用处理器
5、执行处理器(Controller,也叫后端控制器)。
6、Controller执行完成返回ModelAndView
7、HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet
8、DispatcherServlet将ModelAndView传给ViewReslover视图解析器【ModelAndView内部其实就是一个jsp文件的路径】
9、ViewReslover解析(读取jsp文件到内存中)后返回具体View
10、DispatcherServlet对View进行渲染视图(即将模型数据填充至视图中)。
11、DispatcherServlet响应用户
2:什么是springMVC框架【简单介绍一下spring框架的答题思路】
springMVC框架属于表现层框架,使用了MVC架构模式的思想,是spring框架的一部分。
MVC是web开发中的设计模式
3:springmvc与struts2不同
1、springmvc的入口是一个servlet即前端控制器,而struts2入口是一个filter过滤器。
2、springmvc是基于方法开发(一个url对应一个方法),传递参数是通过方法的形参,一般设计为单例模式(可以设计为单例或多例(建议单例));
struts2是基于类开发&#x