spring MVC

面试官问道:有了stuts的mvc为什么还要spring的mvc ,你觉得spring有什么不爽的地方?

个人觉得两者之间的区别还是比较明显的,先说一下他们的共同点:
1.都是mvc框架;
2.感觉struts的action类似于spring的ioc,都是使用java反射机制来实现的依赖注入;
3.struts2的拦截器使用也类似于spring的aop,都是通过动态代理实现的;

他们的区别,在我看来有如下:

1.配置不一样(这点就不多说了)

2.spring的控制器对象的处理请求方法需要带有HttpServletRequest和HttpServletResponse参数,这样不便于调试;
3.参数的接收,在struts2中通过set方法就实现了,而spring
则取药显式的去从request中获取,另外参数的传递也比较方便;
4.struts2处理请求的返回页比较方便,通过acction的返回的结果名称,定位返回的页面或者重定向到另一个action
5.struts2
同时提供了对于请求变量的校验和类型的转换;

6.
我觉得spring在mvc框架中相对于struts2的优势在于它的IOC,struts2只是注入action,而spring可以将更多的bean注入到这个action中;

综上所述,
springmvc较struts2更轻量,但是没有struts2在mvc方面功能强大

两者不可同日而语

前者是
web界经典的mvc框架系Apache软件基金下Jakarta项目的一部分,主要架构设计
和开发者是Craig R.McClanahan,到现在已经将近8年时间了

后者是Rod Johnson 是对《Expert One-on-One J2EE Design and Development》一书中所阐述的设计思想的具体实现,基于interface21 开发包引入了IOC、AOP等重要思想的轻量级框架。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值