Spring MVC执行流程
1.用户发送请求到DispatcherServelet
2.DispatcherServelet请求HandlerMapping查找Handler并返回Handler
3.DispatcherServelet调用HandlerAdapter并执行Handler
4.Handler执行完返回ModelAndView给HandlerAdapter
5.HandlerAdapter再将ModelAandView返回给DispatcherServelet
6.DispatcherServelet请求视图解析器解析ModelAandView
7.视图解析器返回真正的视图给DispatcherServelet
8.DispatcherServelet进行视图渲染并向用户响应结果
Spring MVC与Struts2的主要区别
1
Spring MVC的入口是servlet即前端控制器(DispatcherServelet)
Struts2入口是filter过滤器(StrutsPrepareAndExecuteFilter)
2
Spring MVC是基于方法开发,传递参数是通过方法形参,可以设计为单例或多例(建议单例)
Struts2是基于类开发,传递参数是通过类的属性,只能设计为多例
3
Spring MVC通过参数解析器是将Request对象内容进行解析成方法形参,将响应数据和页面封装成ModelAndView对象,最后又将模型数据通过Request对象传输到页面。 JSP视图解析器默认使用jstl
Struts采用值栈存储请求和响应的数据,通过OGNL存取数据
网友评论