|
一 04
|
Struts In Action完整pdf下载
StrutsinAction.rar
Struts In Action完整pdf下载
4.配置Struts 组件 本章内容 Web应用部署描述符 Change alone is unchanging. —Heraclitus (c 535–c 475 B.C.) 4.1. 三个 XML文件和一个属性文件 web.xml. 这是Java Servlet 要求的web 应用部署描述符。Servlet/JSP 容器使用这个文件来载入和配置你的应用。 struts-config.xml. Struts 框架的部署描述符。它用来载入和配置Struts 框架使用的各种组件。 Build.xml. Jakarta Ant 构建工具使用它来编译和部署你的应用。使用Ant 不是必需的,但它在Struts 开发人员中很流行。 Application.properties. 该文件为你的Struts 应用提供资源。像build.xml 文件一样,它不是严格要求的,但是大多数Struts 应用都要用到。 尽管处理这些文件看起来也许不象是在进行“Java 开发”, 但是正确的使用它们却是使你的web 应用能拿得出手的基本要求。在这一章,我们会仔细讨论这些文件的工作原理,以及它们能对你的应用的开发和部署起什么作用。 4.1.1. 家族的其他人员 阅读全文 »
—Excerpt from the notebooks of Lazarus Long, from Robert Heinlein’s Time Enough for Love 3.1. 被支柱支撑的支柱 现在,各种团队都在编写各种各样的web 应用。在应用中使用分层架构 [POSA] ,如第1 章和第2 章所述,可以很容易地让团队的成员分别专注于应用的不同部分。但是,仍然很有必要让团队的每个人都从头到尾理解整个处理流程。在我们深入探究Struts 的各部分是如何优雅的相互结合之前,让我们先从头开始构建一个简单但有用的程序。在这一章,我们将通过教程、逐步解剖来和Struts 来一个亲密接触,然后构建一个供用户登入和登出的程序。 虽然没有第一章的例子显得细微,我们仍然暂时保持例子的简单性。在第4 章才会涉及到一个实际的应用。 在本章,我们将从用户的角度来讨论一个经典的登录logon 应用。第一章的练习只是对从注册页面输入的密码信息进行比较,根据是否匹配来控制页面流的分支跳转。该应用让您使用第1 章的练习所创建的账户来进行实际登录。控制流和页面内容的改变取决于你的状态。 引入这个应用后,我们将对它进行分解来仔细探讨其各个部分。如果你的机器上安装了Struts 开发环境,你可以跟着来做。当然,你也可以舒服地靠在你的椅子上,喝着卡普契洛咖啡,来看它是如何工作的。 然后,打好基础后,我们就开始一步步构建这个应用。 阅读全文 »
2.1. Talking the talk 为了能对Struts 架构有个充分的全面印象,我们将总体介绍Struts 的控制流和它处理请求-响应事件循环的方式。只有彻底理解这个处理原理才能最好的在应用中使用这个框架。 选择一个web 应用框架不应该是个漫不经心的决定。很多人都可以使用这本书,特别是用这章的内容,来评价Struts 是否适合它们的项目。因此,我们在这章的最后部分将有一个关于Struts 优缺点的客观评价,并阐明其总体性能。 Struts 设计来针对专业开发人员。为做出正确的决策,专业人员应该知晓工具的能力和限制。 2.2. 为什么我们需要Struts 今天的web 应用基本上都是代表共同理念的关键组件。通常,开发团队需要在有限的时间里创建应用,然后它们不得不正确的构建,并能持续构建它。 Java web 开发人员已经有一些工具可用来建立表现层,比如JavaServer Pages 和 Velocity 模板。也有一些机制来处理数据库—如JDBC 和Enterprise JavaBean (EJB)。但我们用什么来将它们集合在一起?我们已经有了型材和砖墙…还缺什么呢? 2.2.1. 退一进三 在上世纪80 年代,当GUI 被发明时,软件架构认为,应用具有3 个主要部件: 管理数据的部件,创建屏幕和报表的部件,以及处理用户交互和子系统交互的部件[Ooram]。 在90 年代早期,ObjectWorks/Smalltalk 编程环境将这个三角结构引入为一个开发框架。按Smalltalk 80 的说法,数据系统称为模型Model,表现系统称为视图View,而交互系统称为控制器Controller 。许多现代开发环境,包括Java 的Swing, 都使用Model/View/Controller (MVC) 架构作为它们的基础架构。 图 2-1 MVC 架构 Java web 开发者已经有很多有用的工具,比如JDBC 和 JSP, 作为 Model 和 View 的手段,但作为控制器的工具和组件在哪? 2.2.2. 进入 Struts Struts 的核心是一个MVC 风格的控制器。Struts 控制器搭起了Model 和View 之间的桥梁。框架也包括开发人员想用来开发可伸缩的、先进的应用系统的其他组件。Struts 是一个“ 隐藏支柱”的集合,帮助开发人员将分散的材料,如数据库和页面,结合成一个整体的应用系统。 2.2.3. Struts控制器组件 Struts 控制器组件是一个可编程的组件集,允许开发人员定义它们的应用如何准确地和用户进行交互。这些组件在逻辑名称后面隐藏了令人讨厌的、繁琐的实现细节。开发人员可以一次性编写这些实现细节,然后转头考虑它们的应用应该做什么,而不是考虑应用应该如何做。 用户通过超链接和HTML form 与Web 应用程序进行交互。超链接引导页面显示数据和其他内容,如文本和图像。表单通常通过一些定制动作向应用提交数据。 图 2-2 主要Struts 组件 如图5 中所示, Struts 提供了开发人员可用来定义超链接,表单,和定制动作这些交互的相关组件。我们已经使用这些组件在第1 章创建了一个入门程序。第3 章,我们还要用它们来创建另一个程序。然后,在第4 章,我们将讨论这些组件的详细配置。随后的章节,将详细讨论如何将每个组件以及如何用在你的程序之中。在第4 章,我们将展示如何在运行的程序上下文中使用这些组件。但是,因为这一章是架构性的总体介绍,所以我们继续介绍Struts 的主要部件。 对应用开发人员来说,超链接是指向应用中某些资源的路径。这些资源可能是web 页面,或者是定制动作。超链接中也可以包含特殊的参数。在Struts 中,开发人员可以将超链接定义为一个ActionForward 。 这些对象都有个逻辑名称和一个path 属性。这使得开发人员可以设置path,然后通过名称来引用ActionForward。ActionForward 通常在一个XML 文件中定义,这个配置文件在Struts 启动时载入。Struts 使用 XML 定义来创建Struts 配置,包括一个ActionForward 的列表。可用来创建到欢迎页面链接的ActionForward 对象的XML 元素看起来可能像: 这个元素事实上是创建了一个 ActionForward JavaBean ,其name 属性设置为welcome, path 属性设置为/pages/index.jsp。 JSP 页面和其它组件就可以引用这里定义的welcome 转发。Struts 框架将查找welcome ActionForward bean 并获取其path 属性以完成这个超链接。这样开发人员可以改变链接的目标而不用改变所有引用该链接的相关组件。在很多Web 应用中,象这样的细节被硬编码到JSP 或 Java code 中,使维护变得困难并且容易发生错误。在Struts 应用中,这些细节可以通过应用配置来改变,而不用触及到具体的页面和Java 类。 HTML表单 阅读全文 »
1.1. 关于本书 |
|
近期评论