Struts MVC与Spring MVC的区别

昨天下午去面试的时候,面试官跟我说:“给我谈谈struts mvc和spring mvc吧”,我谈着谈着就谈到SSH集成去了,回来后想了想,Struts和Spring mvc确实有必要单独分析比较一下。这里本人只做简单的个人的认识,网上相关的资源很多。

Struts MVC:

①一个类对应一个请求上下文,也就是一个Action请求做出一次响应。

②由于第一点,Struts的类是共享的,其属性也是共享的,每次请求都会创建该类的实例,性能方面有多余的消耗

③Struts的入口是拦截器,通过拦截器再通过控制器转发到不同的bean去处理请求(具体可以看看servlet与拦截器与interceptor的区别,我将会在后几篇博客中讲)

④Struts的Ajax需要手动配置url,相对比较麻烦

⑤Struts MVC更加面向对象编程(OOP)

⑥对于JSR303自定义注解,Struts处理验证很繁琐


Spring MVC:

①一个方法对应一个请求上下文,也就是基于一个方法做出一次响应,(网上说的restful url,一般不会用spring与url结合使用,所以不必太关心)

②由于第一点,方法之间是完全独立的,(体现了spring的轻量级框架)

③Spring的入口是servlet,针对一个方法就可以直接去做相应的处理,(这里也体现了spring的‘0配置’)

④Spring MVC集成了Ajax,只需一个注解@ResponseBody就可以实现,(体现了Spring更高级吧。)

⑤Spring MVC相对比较谨慎,是在servlet上面做的扩展

⑥支持JSR303,处理验证更加灵活方便


以上是本人对Struts MVC和Spring MVC的一个简单的区别整理,编程领域没有绝对的好与坏,只有相对的存在。如果有幸再被面试到这个问题,应该不会有问题了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值