某次面试,叫谈一下struts1.x与struts2.x区别,由于不太重视这次面试,临场组织得不好,回答得一般。
难以明白,明明两样不同的东西,有什么区别好讲的?
与其说struts1.x与struts2.x的区别,不如说MVC框架一般具有哪些功能?
大范围来讲MVC框架核心就是请求转发,通常C 和V都要我们去实现。
具体来讲,一般有如下功能:
1、接收客户端的请求,并对客户端的请求的数据进行收集与校验
2、支持返回多种视图
3、支持国际化
4、支持异常的统一处理
5、支持AOP技术,能对请次Action请求进行处理
6、支持resutlful
那么MVC框架之间的区别,实际上也就这几个方面实现方式的区别
如果具体到struts1.x与struts 2.x区别
那么可以从如下着手:
1、框架是否具有侵入性,Action是否依懒Servlet API?
2、客户端接收的数据,每个方法都可以进行不同的校验?
3 、Action是否线程安全,单例还是多例?
4、是否内置返回多种视图的支持?
5、是否提供类似AOP技术的支持?如对请求每个Action前后进行某些处理
6、是否提供resultful支持
ps:国际化与异常统一处理MVC框架一般都有此功能。
本文探讨了Struts1.x与Struts2.x的主要区别,包括框架侵入性、Action依赖、数据校验灵活性、线程安全性、视图支持、AOP技术应用及RESTful支持等方面。

被折叠的 条评论
为什么被折叠?



