struts2与SpringMVC的区别前端
1) SpringMVC的入口时是servlet即前端控制器;struts2的入口是filter过滤器web
2) SpringMVC是基于方法进行开发的(一个URL对应一个方法),请求参数传递到方法的形参,能够设计为单例或多例;Struts2是基于Action类开发的,传递参数是经过类的属性,只能设计为多例后端
3) Struts2采用值栈存储数据和响应的数据,经过OGNL存取数据;SpringMVC经过参数解析器是将request请求内容解析,并给方法形参赋值,将数据和视图封装成ModelandView对象,最后又将ModelandView中的模型数据经过request域传输到页面。jsp视图解析器默认使用jstl设计模式
SpringMVC工做流程架构
SpringMVC简介app
SpringMVC是一种基于Spring实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,使用了MVC架构模式的思想,将web层进行职责解耦,并管理应用所需对象的生命周期,为简化平常开发,提供了很大便利。框架
SpringMVC组件jsp
DispatcherServlet(前端控制器):做为前端控制器,整个流程控制的中心,控制其它组件执行,统一调度,下降组件之间的耦合性,提升每一个组件的扩展性。spa
Handler Mapping(处理器映射器):经过扩展处理器映射器实现不一样的映射方式,例如:配置文件方式,实现接口方式,注解方式等。 设计
Handler Adapter(处理器适配器):经过扩展处理器适配器,支持更多类型的处理器。
View Resolver(视图解析器):经过扩展视图解析器,支持更多类型的视图解析,例如:jsp、freemarker、pdf、excel等。
SpringMVC简介工做流程