
搭建一个Web 应用比较容易,但要建造一个大型Web应用,就不是小孩子拱积木的能力所能完成了。正如要建一座高楼,必须要有一个坚实的地基。对于一个大型的Web应用,需要处理的东西相当多,但是必须有坚实的基础。STRUTS技术为您提供了极大的便利,它提供了一套框架用来方便地构建Web应用,尤其是大型的Web应用,使得开发人员可以快速、轻松地开发Web应用。本书还附带一个完整、典型、实用的STRUTS实例,以帮助读者更好地理解和运用STRUTS技术。
目 录
第一部分 概述
第1章 本书的章节安排 2
第2章 背景资料 3
2.1 Web技术及Web应用 3
2.1.1 HTTP请求/响应阶段 3
2.1.2 Web应用程序 4
2.2 Java语言 6
2.2.1 Java技术的发展 6
2.2.2 Java Beans技术 7
2.2.3 JDBC 8
2.2.4 J2EE 8
2.2.5 EJB 12
2.3 Java Servlet技术 14
2.3.1 HTTP Servlet API 15
2.3.2 常用HTTP ServletAPI概览 16
2.4 JSP技术 18
2.4.1 JSP技术概述 18
2.4.2 JSP的优势 19
2.4.3 用JSP开发Web的几种主要方式 21
第3章 Struts框架概述 23
3.1 MVC模式 23
3.2 Struts框架概述 25
第二部分 Struts技术详述
第4章 MVC中的M 30
4.1 概述 30
4.2 深入理解MVC中的M 31
4.2.1 模型的不同类型 31
4.2.2 业务对象 33
4.3 在Struts中构建模型 35
4.3.1 为应用程序创建业务对象 36
4.3.2 建立数据库 40
4.3.3 Action中业务委派及DAO模式 44
4.3.4 访问关系数据库 56
第5章 MVC中的V 63
5.1 概述 63
5.2 深入理解MVC中的V 63
5.3 在Struts中构建视图 65
5.3.1 在Struts框架中使用视图 65
5.3.2 国际化消息 66
5.3.3 在View组件中使用JavaBeans 68
5.3.4 表单和FormBean的交互 70
5.3.5 ActionForm的设计 84
5.3.6 ActionErrors 92
5.3.7 其他的表示技术 95
第6章 MVC中的C 100
6.1 概述 100
6.2 深入理解MVC中的C 100
6.2.1 控制器机制 101
6.2.2 控制器中重要的类 102
6.3 在Struts中构建控制器 124
6.3.1 Utilities类 124
6.3.2 其中一些常用类 125
第7章 Struts的安装与配置 128
7.1 概述 128
7.2 获取和安装Struts 128
7.2.1 软件平台 128
7.2.2 安装Struts二进制发行版 129
7.2.3 配合Servlet Container来安装Struts 131
7.2.4 从源代码构建Struts 132
7.3 Struts的配置文件 134
7.3.1 控制器配置 134
7.3.2 消息资源配置 134
7.3.3 插件配置 135
7.3.4 ActionMapping配置 135
7.3.5 数据源配置 136
7.4 配置模块化的应用 136
7.4.1 模块配置文件 136
7.4.2 配置控制器,公布程序模块 137
7.4.3 模块转接 137
7.5 Web应用的部署描述符 139
7.5.1 Action Servlet实例配置 139
7.5.2 Action Servlet映射配置 142
7.5.3 Struts标签库配置 142
7.6 在应用中添加Struts组件 144
7.7 在Struts应用中使用Log 144
第三部分 高级应用Struts技术详述
第8章 使用Tiles 148
8.1 概述 148
8.2 模板(Template) 148
8.2.1 为什么使用模板 149
8.2.2 模板的使用 151
8.3 使用Tiles 153
8.3.1 安装和配置Tiles 153
8.3.2 Tiles概述 155
8.3.3 使用Tile 155
8.4 使用Definitions 157
第9章 异常处理 162
9.1 Java异常处理机制 162
9.1.1 Java Exceptions 162
9.1.2 Java方法调用堆栈 163
9.1.3 Throw语句 164
9.1.4 检查和非检查异常 165
9.1.5 异常处理的性能影响 168
9.1.6 系统异常和程序异常 169
9.1.7 使用异常链 170
9.1.8 处理多个异常 171
9.2 Struts提供的异常处理机制 173
9.2.1 声明方式和编程方式 173
9.2.2 编程方式处理异常 179
9.3 其他话题 181
9.3.1 远程异常处理 181
9.3.2 自定义标签的异常处理 181
9.3.3 异常处理的国际化 182
9.4 结论 182
第10章 Struts及国际化 183
10.1 何谓国际化 183
10.2 Java中对于国际化的支持 184
10.2.1 Locale类 184
10.2.2 Java资源包 188
10.2.3 多语言支持 190
10.3 国际化Struts应用程序 190
10.3.1 概述 190
10.3.2 Struts资源包 191
10.4 异常处理及国际化 194
第11章 程序打包与Ant的使用 199
11.1 打包和发布 199
11.1.1 什么是打包 199
11.1.2 什么是发布 200
11.1.3 预编译JSP页面 201
11.2 使用Ant 201
11.2.1 Ant的获得与运行 201
11.2.2 使用Ant的高级技巧 204
第12章 Struts应用开发经验 214
12.1 什么时候该扩展Struts框架 214
12.2 异常处理方式:声明方式还是编程方式 215
12.3 如何使用模块新特征 216
12.3.1 创建独立的Struts配置文件 217
12.3.2 配置Web部署描述符 217
12.3.3 多个应用模块之间调用Action类 219
12.4 如何保护JSP源代码 219
12.5 用Prebuilt Action类提高开发效率 220
12.5.1 使用ForwardAction 221
12.5.2 使用DispatchAction 221
12.6 使用动态ActionForm 222
12.7 使用可视化工具 223
第四部分 实例详解
第13章 实例概要说明 226
第14章 实例的配置与使用 229
14.1 数据库环境的建立 229
14.2 Web容器的安装与配置 231
14.3 重新编译应用 236
第15章 实例的开发说明 238
15.1 应用配置的配置 238
15.2 MVC 239
15.3 单个页面开发 240
15.3.1 banner.jsp 240
15.3.2 index.jsp 241
15.3.3 login.jsp 241
15.3.4 mainMenu.jsp 243
15.3.5 newAccount.jsp 243
15.3.6 order.jsp 244
15.4 实例小结 245
附录A HTTP协议的响应头分析 246
附录B HTTP协议状态码的含义 258
附录C HTML编程指南 260
附录D Struts参考手册 277
参考文献以及资料 378