Struts2笔记(一):Struts2概述

来源:互联网 发布:阿里云电脑版登录入口 编辑:程序博客网 时间:2024/06/11 17:46

1.Web技术的发展 如图:

2.MVC思想及其优点
MVC结构图:如下图

 

MVC思想将一个应用分成三个基本部分:Model(模型)、View(视图)和Controller(控制器),这三个部分以最少的耦合协同工作,从而提高应用的可扩展性及其维护性。
MVC优点:
·多个视图对应一个模型。
·模型返回的数据与显示逻辑分离。
·应用被分隔为三层,降低各层间的耦合性。
·控制层概念。
·MVC更符合软件工程化管理的精神。
3.常用的MVC框架
JSF
Tapestry
Spring MVC
Struts1与Struts2的对比
·在Action实现类方面的对比:Struts1要求Action类继承一个抽象基类;Struts2 Action类可实现一个Action接口,也可实现其它接口。
·线程模式方面的对比:
Struts1 Action是单例模式并且必须是线程安全的,Struts2 Action没有线程安全问题。
·Servlet依赖方面的对比:Struts1 Action依赖Servlet API,Struts2不在依赖Servlet API。
·可测性方面的对比:Struts1 Action的测试依赖于Web容器,Struts2 Action可以通过初始化、设置属性、调用方法来测试。
·封装请求参数的对比:Struts1使用ActionForm对象封装用户的请求参数,所有的ActionForm必须继承一个基类:ActionForm。Struts2 直接使用Action属性来封装用户请求属性。
·表达式语言方面的对比:Struts1整合了JSTL,Struts2可以使用JSTL,但它整合了一种更强大和灵活的表达式语言:OGNL。
·绑定值到视图的对比:Struts1使用标准JSP机制把对象绑定到视图页面;Struts2使用“ValueStack”技术。
·类型转换的对比:Struts1 ActionForm 属性通常都是 String类型。
·数据校验的对比:Struts1支持在ActionForm重写validate方法中手动校验,或者通过整合Commons Validator框架来完成校验;Struts2支持通过重写Validate方法进行校验,也支持整合XWork校验框架进行校验。
·Action 执行控制的对比:Struts1支持每一个模块对应一个请求处理,但是模块中所有Action必须共享相同的生命周期。Struts2支持通过拦截器堆栈为每一个Action创建不同的生命周期。

原创粉丝点击