SpringMVC和Struts2的区别:
1. SpringMVC是方法级别的,而Struts2是类级别的, Struts2一次请求就会创建一个对象, 所以SpringMVC会比Struts2要快.
2. SpringMVC是基于Servlet, 而Struts2是基于Filter.
SpringMVC的工作原理:
1. 用户请求首先到DispatcherServlet(前端控制器)
2. 前端控制器接受到请求调用HandlerMapping处理映射器
3. 处理映射器通过xml配置或者注解找到相应的Handler返回给前端控制器
4. 前端控制器拿到返回的处理器调用HandlerAdapter(处理器适配器),执行相应的Handler. 并返回数据模型和视图
5. 前端控制器将ModelAndView传给ViewReslover(视图解析器)进行渲染.
6. 前端控制器最后响应这次请求.