struts2与struts区别
2013-05-22 01:31
253 查看
线程模式:
Struts1 Action是单例模式存在线程安全问题。
Struts2 Action是多例模式不存在线程安全问题。因为每一个请求都会产生一个实例。
依赖:
Struts1的Action依赖于Servlet的API,execute方法要在容器中执行。因为当一个Action被调用时会执行时request和response会被传递给servlet的execute方法。
Struts2的Action不依赖于容器,execute可以脱离容器进行。如果需要,Struts2的Action仍然可以访问request和response。
校验:
Struts1通过在ActionForm的validate方法或Validator的扩展来校验。
Struts2通过validate方法和XWork校验框架来进行校验。
Action实现:
Struts1要求Action类继承Action或DispatchAction。
Struts2的Action类一般实现ActionSupport,也可实现其他接口来应用常用的功能。
Action生命周期:
Struts1每个模块中的所有Action有相同的生命周期。
Struts2每一个Action创建不同的生命周期。
表达式语言:
Struts1整合了JSTL,因此使用JSTL和EL。
Struts2可以使用JSTL和OGNL表达式。
Struts1 Action是单例模式存在线程安全问题。
Struts2 Action是多例模式不存在线程安全问题。因为每一个请求都会产生一个实例。
依赖:
Struts1的Action依赖于Servlet的API,execute方法要在容器中执行。因为当一个Action被调用时会执行时request和response会被传递给servlet的execute方法。
Struts2的Action不依赖于容器,execute可以脱离容器进行。如果需要,Struts2的Action仍然可以访问request和response。
校验:
Struts1通过在ActionForm的validate方法或Validator的扩展来校验。
Struts2通过validate方法和XWork校验框架来进行校验。
Action实现:
Struts1要求Action类继承Action或DispatchAction。
Struts2的Action类一般实现ActionSupport,也可实现其他接口来应用常用的功能。
Action生命周期:
Struts1每个模块中的所有Action有相同的生命周期。
Struts2每一个Action创建不同的生命周期。
表达式语言:
Struts1整合了JSTL,因此使用JSTL和EL。
Struts2可以使用JSTL和OGNL表达式。
相关文章推荐
- Struts2和Struts1的区别(转)
- Struts1 和Struts2的区别
- 总结了Struts1与Struts2的12点区别
- Struts1与Struts2的区别
- [转]Struts1和Struts2的区别和对比
- [转]Struts1和Struts2的区别和对比
- Struts1于Struts2的区别
- struts1 和 struts2 的区别
- Struts2和Struts1.x的区别
- Struts1 和Struts2的区别
- struts2的json-default和struts-default的区别
- struts2的json-default和struts-default的区别
- [转]Struts1和Struts2的区别和对比
- Struts2.x和Struts1.x的区别
- Struts2五、Struts1与Struts2的区别
- Struts2中的FilterDispatcher和StrutsPrepareAndExecuteFilter的区别
- 总结了Struts1与Struts2的11点区别
- Struts1.2 与 Struts2的区别
- Struts2 的简介以及 struts2 与struts1的区别
- [转]Struts1和Struts2的区别和对比