1,Struts2 基于 WebWork
和Struts 合并创建而成.
2,依赖核心库xwork-core-2.2.1.1.jar.
3,使用表达式语言OGNL,以标签的方式更方便的在JSP中访问java实例中的各种属性,降低JSP中的JAVA代码量.
4,通常,Framework中都用一个“命令和控制”组件 “command and control
component”.
5,通过基于请求响应(Request-Response)模式的应用Framework,基本上有如下几个表现逻辑结构组成。
– 控制器(Controller)——控制整个Framework中各个组件的协调工作。
– 业务逻辑层(Business
Logic)——对Framework本身来说,这里仅仅只是概念和几个提供服务的基础组件,
真正的实现与客户的业务逻辑接轨,还需要开发人员在Framework上再次扩展。
– 数据逻辑层(Data
Logic)——绝大多数应用系统都需要涉及到数据交互,这一层次主要包括了数据逻辑和数据访问接口
6,Struts2 有其自己的控制器
( Controller ),同时整合了其他的一些技术去实现模型层(Model)和视图层(View)。
在模型层,Struts2
可以很容易的与数据访问技术相结合
,包括 EJB,JDBC 等 。
在视图层,Struts2
能够与JSP,Freemarker、Velocity等模板引擎表示层组件相结合。
7,Struts有一组相互协作的类、Servlet以及Jsp
TagLib组成。
基于Struts构架的web应用程序基本上符合JSP Model2的设计标准,可以说是MVC设计模式的一种变化类型。
8,MVC是Model-View-Controller
的简称,即模型-视图-控制器。
MVC是一种设计模式,它把应用程序分成三个核心模块:模型、视图、控制器,它们各自处理自己的任务。
首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理。
然后模型根据用户请求进行相应的业务逻辑处理,并返回数据。
最后控制器调用相应的视图格式化模型返回的数据,并通过视图呈现给用户。
这样一种模式便宜企业中多人协作开发项目。
横向开发:一个模块由一个人开发。
纵向开发:一个模块的不同层由不同开发人员开发。
9,mvc优点:★★★★★
首先,最重要的一点是多个视图能共享一个模型。同一个模型可以被不同的视图重用,大大提高了代码的可重用性。
由于MVC的三个模块相互独立,改变其中一个不会影响其他两个,所以依据这种设计思想能构造良好的松耦合的构件。
此外,控制器提高了应用程序的灵活性和可配置性。控制器可以用来联接不同的模型和视图去完成用户的需求,
这样控制器可以为构造应用程序提供强有力的手段
实现MVC会增加一定的工作量,如果是比较下的项目,就不需要实现MVC。当项目比较大,存在大量的JSP页面,
业务逻辑也很复杂时,使用MVC可以提高项目的健壮性,代码重用性,使代码的结构更清晰,易维护。
10,jsp model 1:将业务逻辑放到了JavaBean中.
11,jsp
model 2
? JSP负责生成动态网页
? Servlet负责流程控制
? JavaBean负责业务逻辑
12,Struts与Web App的关系
– 既然struts 叫做web framework,那么其肯定主要基于web层的应用系统开发。按照J2EE Architecture 的标准 ,
struts 应当和jsp/servlet一样,存在于web
container(比如 Tomcat)一层.
1. 认识 struts2 !--圣思园Struts 2.2笔记
原文:http://www.cnblogs.com/java-z/p/3550823.html