学习Struts之前你需要了解的

在了解Struts之前,首先我们先要了解三个框架MVC、Model1、Model2

MVC框架

MVC是一种设计模式,它强制性地将应用程序的输入、处理、输出进行分离,将应用程序分成模型(Model)、视图(View)、控制器(Control)三个模块。其中视图是用户看到并与之交互的界面;模型是应用程序的主体,表示业务数据和业务逻辑;控制器接受用户的输入并调用模型和视图完成用户的需求。

早期的JavaWeb结构

在早期的JavaWeb应用中,JSP是一个独立的、自主完成所有任务的模块。这样的设计会导致一系列的问题,例如:HTML代码与Java程序强耦合、业务逻辑内嵌在页面上;调试困难;业务逻辑和页面表示强耦合;单个页面代码量庞大,可读性差,不易维护等等。模型结构如下:

学习Struts之前你需要了解的

为了解决上述问题,Sun公司制定了两种规范,分别是JSPModel1和JSP Model2。

Model1框架

Model1体系中,JSP页面负责响应用户请求并将处理结果返回用户,JSP负责业务流程控制、表示层数据,所以Model1并没有实现这视图和控制器的独立和分离。使用Model1会导致JSP页面嵌套大量Java代码,这对Java程序员问题可能不大,但对页面设计人员开发和维护就会造成很大问题。模型结构如下:

学习Struts之前你需要了解的

Model2框架

Model1在一定程度上实现了MVC,但它的运用并不理想,直到基于J2EE的Model2问世才得以实现。在Model2中,JSP实现视图的功能、Servlet实现控制器的功能、JavaBean技术实现模型的功能。Model2在Model1的基础上,将视图和控制进行了分离,完成了表达和内容的分离。模型结构如下:

学习Struts之前你需要了解的

Struts框架

了解了MVC、Model1、Model2之后,我们再来讲解一下Struts。概括的讲Struts实质就是在Model2的基础上实现的一个MVC框架。所不同的是在Struts框架中,模型由实现业务逻辑的JavaBean或EJB组件构成,控制器由ActionServlet和Action来实现,视图由一组JSP文件构成。模型结构如下:

学习Struts之前你需要了解的


到此,相信你已经对Model1Model2Struts有了一定的了解,下次我们继续讲解Struts模型。

你可能感兴趣的:(struts)