A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 日光加蓝 中级黑马   /  2014-7-26 15:58  /  659 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Spring MVC和Struts2的区别:
1. 机制:spring mvc的入口是servlet,而struts2是filter(这里要指出,filter和servlet是不同的。
以前认为filter是servlet的一种特殊),这样就导致了二者的机制不同,这里就牵涉到servlet和filter的区别了。

2. 性能:spring会稍微比struts快。spring mvc是基于方法的设计,而sturts是基于类,
每次发一次请求都会实例一个action,每个action都会被注入属性,而spring基于方法,
粒度更细,但要小心把握像在servlet控制数据一样。spring3 mvc是方法级别的拦截,
拦截到方法后根据参数上的注解,把request数据注入进去,在spring3 mvc中,一个方法对应一个request上下文。
而struts2框架是类级别的拦截,每次来了请求就创建一个Action,然后调用setter getter方法把request中的数据注入;
struts2实际上是通过setter getter方法与request打交道的;struts2中,一个Action对象对应一个request上下文。

3. 参数传递:struts是在接受参数的时候,可以用属性来接受参数,这就说明参数是让多个方法共享的。

4. 设计思想上:struts更加符合oop的编程思想, spring就比较谨慎,在servlet上扩展。

3 个回复

倒序浏览
框架,完全看不懂啊:Q
回复 使用道具 举报

同感,看到就脑大:Q;P
回复 使用道具 举报
学习!学习!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马