1、MVC基本概念
MVC思想将一个应用划分成三个基本部分:模型(Model)、视图(View)、控制器(Controller)。
2、常用的MVC框架
(1)struts:后面将要学习的框架
(2)JSF:是一个标准,有Sun的参考实现和Apache的MyFace两个实现产品可供选择
(3)Tapestry:MVC框架和模板技术的结合
(4)Spring MVC:细致完整的MVC框架,耦合性极低,使用很广泛
3、Struts 1框架
是第一个MVC框架。以ActionServlet作为核心控制器,由客户端发送请求来驱动。请求被ActionServlet拦截并调用业务逻辑处理器进行处理。处理结果以JSP呈现给用户。
Model部分:由业务逻辑组件组成,实现业务逻辑处理。如javaBean、EJB、WebService服务等;
View部分:采用JSP实现,提供大量标签库,以减少脚本的使用;
Controller部分:包括系统核心控制器(ActionServlet)和业务逻辑控制器(用户自己实现的Action实例);
Struts 1的缺陷很多,包括支持的表现层单一(仅有JSP)、耦合严重(业务逻辑控制器内存在大量Servlet API)
4、Struts 2体系
Struts 2是Struts 1和Web Work的结合。处理流程为:
浏览器发送请求 -> 核心控制器FilterDispatcher根据请求调用合适的Action -> WebWork拦截器链自动对请求应用通用功能 -> 回调Action的execute方法 -> Action的execute方法将处理结果返回到浏览器中,可以是HTML、JSP、PDF、FreeMarker、Velocity等多种表现形式。
Struts 2包含两个配置文件:
(1)struts.xml用于配置Action
(2)struts.properties用于配置Struts 2的全局属性
View部分:标签库提供了表现层的数据处理、基本流程控制、国际化、Ajax等多种功能;Controller部分:FilterDispatcher和Action两部分;
Model部分: