(4)接收到客户请求时,检索和用户匹配的ActionMapping实例。
(5)把用户提交的数据保存到ActionForm对象中。
(6)根据配置信息决定是否需要表单验证,如果需要,就调用ActionForm的validate()方法。
(7) 如果验证成功,ActionServlet将请求转发给对应的Action,然后调用Action的excute()方法。
(8) Action的excute()方法返回ActionForward对象,ActionServlet
(9)把客户请求转发给对应的JSP组件。
(10)JSP组件生成网页,返回给客户。
信息流在总的Struts框架中的流程图如图2-2所示:
图2-2 信息数据流程图
ActionForm,是用来保存表单数据的,是框架中的容器层部分。
Action,是用来处理各种逻辑的后台业务层部分,主要是处理前台传来的数据或者是在数据库中调用的数据,并将处理结果返回给前台显示页面。
struts-config.xml,则是前台显示层,后台逻辑处理层和数据保存容器层,相互联系协调的控制器。各个层都是通过控制器struts-config来进行业务处理的。
ActionServlet 类是 Struts 的控制中心类,所有的 URL 地址映射、ActionForm 的匹配、Action 的执行都需要这个类来进行
导航。
2.5 JSP应用
(1)JSP的含义
JSP(JavaServer Pages)是一种基于Java的脚本技术。
在JSP 的众多优点之中,其中之一是它能将
HTML 编码从 Web 页面的业务逻辑中有效地分离出来。用 JSP 访问可重用的组件,如 Servlet、JavaBean 和基于 Java 的 Web 应用
程序。JSP 还支持在 Web 页面中直接嵌入 Java 代码。可用两种方法访问 JSP 文件:浏览器发送
JSP 文件请求、发送至 Servlet 的请求。
(2)JSP工作过程
JSP 文件访问 Bean 或其它能将生成的动态内容发送到浏览器的组件。图2-2说明了该 JSP 访问模型。当 Web 服务器接收到一个 JSP 文件请求时,服务器将请求发送至服务器。服务器 对 JSP 文件进行语法分析并生成 Java 源文件(被编译和执行为 Servlet)。Java 源文件的生成和编译仅在初次调用 Servlet 时发生,除非已经更新了原始的 JSP 文件。在这种情况下,服务器 将检测所做的更新,并在执行它之前重新生成和编译 Servlet。
图2-2 浏览器发送 JSP 文件请求
发送至 Servlet 的请求生成动态内容,并调用 JSP 文件将内容发送到浏览器。图2-3说明了该访问模型。该访问模型使得将内容生成从内容显示中分离出来更为方便。服务器 支持 HttpServiceRequest 对象和 HttpServiceResponse 对象的一套新方法。这些方法允许调用的 Servlet 将一个对象放入(通常是一个 Bean)请求对象中,并将该请求传递到另一个页面(通常是一个 JSP 文件)以供显示。调用的页面从请求对象中检索 Bean, 并用 JSP 来生成客户机端的 HTML。
请求 JDBC
结果Bean
响应
图2-3 发送至 Servlet请求
2.6 Tomcat5.0 应用服务器
Tomcat是一个
免费的开源的Servlet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在Tomcat中得到体现。
2.7 Eclipse开发工具
Eclipse是一个开放
源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具和插件开发环境,这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与eclipse环境无缝集成的工具。
由于Eclipse中的每样东西都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环