本书是Struts项目的完全指南,引导开发人员理解概念、设计和实现方式。虽然它由Struts应用程序的基础开始并深入讲解了Model 2设计方案,但这本书很快转入了较高级的主题。安装和设置贯穿文档始终,并且清楚地解释了每个配置选项。本书利用大量使用了标准JSP标记库和Struts附加程序的实际例子,研究了Struts环境中的JSP编程技术。无论你是希望获取Struts极稀少的在线文档,还是希望学习Model 2编程技术,或者是作为一名高级Struts程序员想完全熟悉这个强大的框架包,这本书都将满足你的要求。
自本书第一版发行以来,Struts开源项目变得越来越受欢迎。尽管这项技术令人振奋,但是它的说明文档却仍然少得可怜——大多数的指南都太简单,那些要编写复杂Web应用程序的开发人员根本找不到所需的关键信息。本书第二版为了填补这个信息缺口,针对最近发布的Struts 1.1版重新修订扩编,提供最新的信息。第二版增加了新的章节来专门探讨安全、与JSF API的集成、JSP标准标记库(JSTL),以及Struts的表达式语言(EL)。此外,第二版对第一版中原有的主题也做了扩充。对于每一个自己所开发的企业系统,本书作者Chuck Cavaness都会花大量的时间去研究能从Struts学到什么,以及找出构建Web应用程序的最有效的方式。为了节省你的时间,让你不再头痛,作者用最理想、最务实的“说到哪里做到哪里”的手法,把无价的实践经验与大家分享,以指导你最大限度地发挥Struts框架的潜能。
前言/1
第一章 简介/9
Web简史/9
什么是Java servlet?/10
JSP页面/13
JSP Model 1和Model 2架构/15
为什么MVC如此重要?/16
什么是框架?/18
其他替代框架/20
第二章 Web层剖析/25
框架概述/25
HTTP请求/响应的过程/29
Struts和作用域/34
使用URL参数/36
转发与重定向的差异/36
第三章 Struts框架概览/44
银行账户示例/44
总体蓝图/48
Struts 控制器组件/50
Struts模型组件/57
Struts视图组件/60
支持多个应用程序/70
结论/71
第四章 配置Struts应用程序/72
Storefront应用程序/72
什么是Web应用程序?/73
Web应用程序的目录结构/74
Web应用程序的部署描述文件/77
为Struts配置web.xml文件/79
Struts配置文件/89
Digester组件/110
Struts Console工具/110
重新加载配置文件/112
第五章 Struts控制器组件/114
控制器机制/114
工具类/141
第六章 Struts模型组件 145
MVC中的“M”/145
什么是业务对象?/149
持久存储/150
Struts为模型提供了什么?/152
第七章 Struts视图组件/177
什么是视图?/177
什么是ActionForm?/183
使用ActionErrors/193
完成表示验证/197
使用DynaActionForm类/198
JavaServer Faces前瞻/201
第八章 JSP自定义标记库/203
自定义标记概览/203
Struts的标记库/207
Struts标记中使用JavaBean/208
Struts的HTML标记库/209
Logic标记库/217
Bean标记库/222
Nested标记库/226
其他有用的标记库/226
JSP标准标记库(JSTL)/227
第九章 扩展Struts框架/230
什么是扩展点?/230
通用的扩展点/231
控制器的扩展点/234
扩展视图组件/238
扩展框架的缺点/242
第十章 异常处理机制/243
Java异常的处理机制/243
异常处理对性能的影响/246
系统异常与应用异常/247
使用链接式异常/248
Struts所提供的异常处理机制/251
拾零补遗/263
结论/265
第十一章 Validator框架/266
需要验证框架的理由/266
安装和配置Validator/267
ActionForm与Validator一同使用/276
创建你自己的验证规则/280
Validator与JSP自定义标记/282
验证的国际化/285
将Validator用在Struts以外的场合/286
第十二章 国际化和Struts/290
什么是国际化?/290
Java对国际化的支持/292
让Struts应用程序支持国际化/299
异常的处理和国际化/304
第十三章 Struts和EJB/306
使用EJB实现Storefront服务/307
让Struts和EJB交互/319
结论/331
第十四章 使用Tiles标记库/332
了解模板/332
安装和配置Tiles的配置/337
使用Tiles框架/340
Tiles标记库/343
使用定义/350
Tiles对国际化的支持/354
第十五章 Struts应用程序的日志机制/356
Web应用程序的日志机制/356
使用servlet容器进行日志记录/357
Jakarta Commons日志包/367
使用log4j包/370
在JSP页面中使用Commons日志API/377
log4j对性能的影响/380
第三方log4j扩展包/381
Java 1.4的日志API/381
第十六章 打包Struts应用程序/383
打包还是不打包/383
把应用程序打包成WAR文件/392
使用Ant来构建你的Struts应用程序/393
创建自动化的构建环境/399
从远程重新启动服务器/401
第十七章 解决性能瓶颈/402
什么是好的性能?/402
性能测试与负载测试/404
性能测试和压力测试的工具/406
测试Storefront应用程序/406
性能和可扩展性陷阱/413
第十八章 JavaServer Faces/417
Struts和JavaServer Faces/417
JSF框架概览/419
安装和运行Struts-Faces应用程序示例/421
把现有Struts应用程序转换成使用JSF/422
其他参考资料/422
附录一 Struts 1.0以来的变化/423
附录二 下载和安装Struts/430
附录三 资源/436