【MarketAnalysis总结】3.0SpringMVC与Strut2的SSH整合的对比
2018-02-11 18:30
435 查看
在采用SpringMVC框架之前,我们进行了一次对SpringMVC与Strut2的对比,最后才选择了SpringMVC框架,在此我来说明一下搭建这个SSH框架的区别,以及两者的对比和选择了前者的原因。
1) 搭建Strut2的SSH框架
Strut2是与SpringMVC层负责的工作一样的,管理视图层;其配置大部分与3)中的配置一致,在这里我取不一样的地方来说明。
a) 对于web.xml,配置中增加了一个Struts的过滤器,如图3.1,这是取代SpringMVC的dispatcher的,用来对请求做集中统一的分发;
图3.1 Struts过滤器
b) 用strut.xml取代springMVC-servlet.xml,如下图3.2,由于strut的具体配置不是我负责的,在此不做过多论述。
图3.2 strut.xml配置
c) Strut对应action层取代controller,action层的功能与controller相似。
2) 选择SpringMVC的原因
a) SpringMVC基于方法开发,而strut2是基于类开发的。前者将url映射到控制器的一个方法里,映射成功后生产一个Handle对象,对象中只包括了一个method;方法执行结束时,形参数据销毁。而后者将url映射到一个类,粒度比前者大,每一个url都要为其配置一个类,粒度太大。
b) SpringMVC可进行单例开发,而sturt2通过类的成员变量接收参数,无法使用单例,只能使用多例。
c) 经过实际测试,strut2的速度更慢,主要是因为其使用了struts标签。
1) 搭建Strut2的SSH框架
Strut2是与SpringMVC层负责的工作一样的,管理视图层;其配置大部分与3)中的配置一致,在这里我取不一样的地方来说明。
a) 对于web.xml,配置中增加了一个Struts的过滤器,如图3.1,这是取代SpringMVC的dispatcher的,用来对请求做集中统一的分发;
图3.1 Struts过滤器
b) 用strut.xml取代springMVC-servlet.xml,如下图3.2,由于strut的具体配置不是我负责的,在此不做过多论述。
图3.2 strut.xml配置
c) Strut对应action层取代controller,action层的功能与controller相似。
2) 选择SpringMVC的原因
a) SpringMVC基于方法开发,而strut2是基于类开发的。前者将url映射到控制器的一个方法里,映射成功后生产一个Handle对象,对象中只包括了一个method;方法执行结束时,形参数据销毁。而后者将url映射到一个类,粒度比前者大,每一个url都要为其配置一个类,粒度太大。
b) SpringMVC可进行单例开发,而sturt2通过类的成员变量接收参数,无法使用单例,只能使用多例。
c) 经过实际测试,strut2的速度更慢,主要是因为其使用了struts标签。
相关文章推荐
- Spring SpringMvc 3.0 + MyBatis 整合--补充关于.properties文件的读取
- SSH和SSM对比总结
- SSH和SSM对比总结
- PCOC2.0与PBOC3.0对比总结
- springMvc sitemesh freemarker 整合总结
- SSH(Spring3.0 + Struts2.1 + Hibernate3.3)整合示例
- ssh整合以及springMVC讲解
- 20171103 SSH和SSM对比总结
- SSH和SSM对比总结
- Ehcache整合springmvc 个人总结
- SpringMvc 3.0 + MyBatis 整合
- 总结篇-Spring-SpringMVC-Hibernate-jpa整合
- springMvc sitemesh freemarker 整合总结
- ssh整合的总结
- springMVC整合DWR3.0 与实例
- ssh整合常见问题总结
- [需再总结]SSH整合代码生成器
- SSH整合开发的一些总结
- SSH和SSM对比总结
- 整合DataTables到JavaWeb(SSH)实例总结分析