深入理解Java Struts框架:工作原理与实战教程

需积分: 32 3 下载量 8 浏览量 更新于2024-07-26 收藏 799KB PDF 举报
"Java+Struts教程" Struts是一个基于MVC(Model-View-Controller)设计模式的Java Web应用程序框架,由Apache软件基金会维护。它为开发者提供了构建可维护、可扩展的Web应用的结构。Struts通过整合请求处理、业务逻辑和用户界面,简化了开发过程。 **Struts的概念和体系结构** Struts框架的核心是Controller部分,它负责协调Model和View之间的交互。其体系结构主要包括以下几个组件: 1. **视图(View)**:通常由JSP页面组成,负责展示数据和用户交互。 2. **模型(Model)**:包含业务逻辑,处理数据和业务规则。 3. **控制器(Controller)**:Struts的控制器由`ActionServlet`实现,它接收HTTP请求,解析请求参数,并调用相应的Action来处理业务逻辑。 **Struts的工作原理和组件** - **ActionServlet**:作为Servlet过滤器,它是Struts的核心,负责路由请求到适当的Action。 - **ActionClasses**:这些类实现了业务逻辑,每个Action对应一个特定的用户操作。 - **ActionMapping**:定义Action和URL路径之间的映射,决定哪个Action应该响应哪个请求。 - **ActionFormBean**:用于从用户表单中收集数据,然后传递给Action处理。 - **Struts配置文件**:定义ActionMapping、Form Beans、Action和其他组件的配置信息。 **Struts的其他组件** - **Validation Framework**:提供验证用户输入的功能。 - **Struts TagLib**:一组自定义JSP标签,简化页面开发,如HTML标签、逻辑标签等。 - **BeanUtils**:提供Java Bean操作工具。 - **Collections**:集合操作支持。 - **Digester**:XML解析工具,用于自动创建和配置Java对象。 **Struts的高级特性** - **验证**:通过XML配置或注解实现表单验证。 - **异常处理**:声明式处理应用程序中的异常。 - **应用模块(Application Modules)**:支持多个独立的应用模块在同一Web应用中运行。 - **JSP保护**:将JSP页面放在WEB-INF目录下,防止直接访问。 - **PrebuiltAction**:预构建的Action类可以提高开发效率。 - **Struts标记库**:包括HTML、逻辑、表单等自定义标签,简化页面开发。 **Struts的安装和使用** 安装Struts通常涉及添加库依赖,配置web.xml和struts-config.xml文件,以及编写Action、ActionForm和JSP页面。教程中的实验部分将指导读者完成从创建简单的JSP页面到实现国际化功能的实践步骤。 **总结** Struts框架通过提供结构化的开发方式,降低了Web应用的复杂性,提高了代码的可维护性和可扩展性。学习和掌握Struts对于Java Web开发者来说,能有效提升项目开发效率,同时理解和应用MVC模式有助于理解现代Web框架的设计思想。
2007-08-02 上传
概述...............................................................................................................................3
Framework概念...........................................................................................................3
Struts的概念和体系结构.............................................................................................4
Struts的与Web App的关系.......................................................................................................4
Struts的体系结构.....................................................................................................................4
从视图角度(View)......................................................................................................5
从模型角度(Model)....................................................................................................5
从控制器角度(Controller)..........................................................................................5
Struts的基本组件包.................................................................................................................5
Struts framework的工作原理和组件.........................................................................6
Struts ActionServlet控制器对象...............................................................................................7
Struts Action Classes.................................................................................................................7
Struts Action Mapping..............................................................................................................8
使用ActionForward导航..........................................................................................................9
Struts ActionForm Bean捕获表单数据..................................................................................10
Struts的其他组件...................................................................................................................11
Validation Framework for Struts.....................................................................................11
Struts TagLib...................................................................................................................11
BeanUtils........................................................................................................................11
Collections.....................................................................................................................12
Digester..........................................................................................................................12
Struts配置文件简介...................................................................................................12
有关Struts Controller及其相关的的配置描述......................................................................12
有关struts tag lib的配置描述.................................................................................................13
有关Struts Action Mapping的配置描述................................................................................13
Form-bean元素...............................................................................................................14
Action元素......................................................................................................................14
Struts高级特性(Struts Advanced Feature).........................................................16
验证........................................................................................................................................16
使用异常处理声明.................................................................................................................18
使用应用模块(Application Modules)...............................................................................20
把JSP放到WEB-INF后以保护JSP源代码............................................................................21
使用 Prebuilt Action类提升开发效率..................................................................................22
Struts标记库...............................................................................................................24
定制JSP标记...........................................................................................................................24
资源束....................................................................................................................................25
Bean标记...............................................................................................................................26
Bean复制标记................................................................................................................26
定义脚本变量的标记.....................................................................................................27
显示Bean属性................................................................................................................28
消息标记和国际化.........................................................................................................28
逻辑标记................................................................................................................................29
条件逻辑.........................................................................................................................29
重复标记.........................................................................................................................31
转发和重定向标记.........................................................................................................32
HTML标记.............................................................................................................................33
显示表单元素和输入控件.............................................................................................33
显示错误信息的标记.....................................................................................................37
其他HTML标记.............................................................................................................38
模板标记................................................................................................................................38
一个简单的示例.........................................................................................................40
Struts的安装...........................................................................................................................40
第一个实验:简单的JSP页...................................................................................................40
第二个实验:struts的国际化................................................................................................41
struts中的Forms......................................................................................................................44
struts:介绍ActionForm...........................................................................................................48
分离Book和BookForm的一个好方法...................................................................................50