在ActionForm对象接收到数据后,将其中的数据原封不动地复制到JavaBean对象中。而Struts2直接用Action类来封装请求参数,不需要创建ActionForm对象,所以就不用为创建大量的ActionForm对象而感到苦恼。
(四)线程模型的比较
Struts1的Action是单例模式,所有针对这个Action的请求都由它的唯一实例进行处理,因此它必须是线程安全的。単例策略限制了Struts1和Action所能做的事,并且在开发时要特别小心,因为Action的资源必须是线程安全或同步的。而Struts2的Action为每一个请求实例化一个对象,这样就没有了线程安全的问题。
六、总结
Struts1是个非常优秀的框架,充分体现了MVC设计模式思想,但是不可否认具有不少缺点,比如表现层单一,代码依赖性太强,容易造成代码冗余以及在设计时容易被线程安全问题所困扰。而Struts2结合了Struts1框架和WebWork框架的优点,解决了Struts1的问题,而且框架的各个组件都是可靠的松散耦合,更符合现代开发人员的要求。
参考文献
1 孙鑫.Struts 2深入详解[M].北京:电子工业出版社,2009
2 李刚.轻量级Java EE企业应用实战—Struts 2+Spring+Hibernate[M].北京: 电子工业出版社,2009
3 孙卫琴.精通Struts:基于MVC的Java Web设计与开发[M].北京:电子工业出版社,2006
4 武宝珠,梁声灼,牛德雄. 基于Struts2+Spring+Hibernate架构构建Web应用系统[J].计算机与现代化,2009,(8):43-46
5 王春林,耿祥义.浅析Struts 2框架[J].现代经济信息,2009,(4):100-101 3/3 首页 上一页 1 2 3 |