第一部分 Java Web入门 3
第1章 建立一个简单的JSP程序 3
1.1 关于JSP 4
1.2 建立和运行简单的JSP程序 4
1.3 关于JSP 2.0 9
1.4 建立和运行简单的JSP 2.0程序 10
1.5 JSP程序运行环境 11
第2章 使用Servlet的Java Web程序 13
2.1 关于Servlet 13
2.2 建立和运行简单的Servlet程序 16
2.3 Servlet程序相关知识 19
2.4 使用Servlet的Java Web程序源代码 21
第3章 使用JavaBean的Java Web程序 23
3.1 关于JavaBean 23
3.2 建立和运行使用JavaBean的Java Web程序 24
3.3 MVC模式 27
3.4 使用JavaBean的Java Web程序源代码 28
第二部分 Struts基础 31
第4章 Struts入门——HelloWorld程序 31
4.1 简化的Struts程序结构 31
4.2 编写Struts的HelloWorld程序 32
4.3 HelloWorld程序的文件结构 38
4.4 Struts基础知识 39
4.5 HelloWorld程序源代码 44
第5章 Struts程序单选框、复选框和下拉列表框的实现 52
5.1 〈html:radio〉标签 52
5.2 〈html:checkbox〉和〈html:checkbox〉标签 53
5.3 〈html:select〉标签 53
5.4 建立和运行包含单选框、多选框和下拉列表框的Struts应用程序 54
5.5 关于Web项目的项目配置文件web.xml 59
5.6 关于Struts配置文件struts-config.xml 60
6.1 从JSP到Struts程序设计 63
第6章 JSP和.NET程序员的Struts简单入门 63
6.2 从.NET到Struts程序设计 66
6.3 Struts.net设计模式 68
6.4 建立和运行简单的Struts.net程序 69
6.5 Struts.net基础知识 74
6.6 简单的Struts.net程序源代码 79
第7章 Struts程序图片、链接和交互式按钮的应用 85
7.1 〈html:img〉标签 86
7.2 建立和运行包含图片、链接和交互式按钮的Struts程序 86
7.3 Struts程序中文显示解决方案 91
第8章 Struts程序出错处理及信息显示 96
8.2 〈html:messages〉标签 97
8.1 〈html:errors〉标签 97
8.3 建立和运行Struts程序出错处理及信息显示程序 98
8.4 Struts程序的国际化处理 102
第三部分 Struts数据库应用 107
第9章 最简单的Struts数据库应用程序 107
9.1 Struts数据库连接问题 108
9.2 关于LookupDispatchAction类 112
9.3 建立和运行最简单的Struts数据库应用程序 114
9.4 项目文件结构 117
9.5 最简单的Struts数据库应用程序源代码 119
第10章 Struts数据库应用程序中记录的删除、更新、添加和分页显示 139
10.1 关于分页问题 140
10.2 关于DAO问题 140
10.3 建立和运行具有删除、更新、添加和分页显示的Struts数据库程序 141
10.4 利用Struts同步令牌(Token)解决表单重复提交问题 145
10.5 具有删除、更新、添加和分页显示的Struts数据库程序部分源程序 148
第11章 Struts程序中实现表格行号及行不同颜色的自动显示 150
11.1 〈logic:iterate〉标签 150
11.2 〈logic:equal〉等logic判断标签 151
11.3 建立和运行带行号和颜色表格的Struts数据库应用程序 152
11.4 带行号和颜色表格的Struts数据库应用程序的源代码 158
12.1 关于MySQL数据库系统 168
第12章 使用MySQL数据库的Struts应用程序 168
12.2 建立和运行MySQL数据库应用程序 170
12.3 建立和运行GBK编码的MySQL数据库应用程序 173
12.4 关于EMS MySQL数据库管理工具 175
12.5 MySQL数据库应用程序部分源代码 176
第13章 使用SQL Server数据库及事务处理的Struts应用程序 179
13.1 关于SQL Server数据库 179
13.2 关于事务处理 180
13.3 建立和运行使用SQL Server数据库及事务处理的Struts应用程序 182
13.4 Struts应用程序中使用SQL Server数据库的注意事项汇总 188
13.5 使用Oracle数据库的Struts应用程序设计方法 189
第14章 使用数据库视图实现多表关联查询的Struts应用程序 190
14.1 关于数据库的视图 190
14.2 建立数据库表、视图及Struts应用程序 192
14.3 视图的优缺点 194
第15章 使用数据库存储过程的Struts应用程序 195
15.1 关于数据库的存储过程 195
15.2 通过JDBC调用存储过程的方法 198
15.3 建立数据库存储过程及Struts应用程序 200
15.4 存储过程的优缺点 206
第16章 Struts.net模式的数据库应用程序 207
16.1 建立和运行Struts.net模式的数据库应用程序 207
16.3 Struts.net模式的数据库应用程序源代码 210
16.2 Struts.net模式的数据库应用程序文件结构 210
第四部分 Struts高级应用 225
第17章 自定义标签在Struts程序中的应用 225
17.1 关于自定义标签 226
17.2 建立和运行使用自定义标签的Struts应用程序 228
17.3 使用自定义标签的Struts应用程序部分源代码 231
第18章 带登录页面及角色的Struts数据库应用程序 234
18.1 建立和运行带登录和角色的Struts应用程序 235
18.2 建立和运行使用登录和角色模块的Struts应用程序 243
18.3 带登录及角色的Struts程序源代码 245
第19章 在Struts程序中使用数组 256
19.1 Struts程序中使用数组 257
19.2 建立和运行使用数组的Struts应用程序 257
19.3 Java 2的集合框架 261
19.4 使用数组的Struts应用程序源代码 265
第20章 Struts文件上传的实现 270
20.1 Struts文件上传组件 270
20.2 建立和运行Struts文件上传程序 272
20.3 Struts文件上传例子部分源程序 274
第21章 Struts文件下载的实现 277
21.1 关于文件下载和DownloadAction类 278
21.2 建立和运行Struts文件下载程序 280
21.3 建立和运行从数据库中获取信息的Struts文件下载程序 282
21.4 Struts文件下载应用程序部分源程序 285
第22章 Struts的数据验证 289
22.1 Struts数据验证的方法 290
22.2 Action中数据验证的实现 291
22.3 ActionForm中数据验证的实现 297
22.4 使用ValidatorForm的数据验证 298
22.5 使用Validator JavaScript的数据验证 301
22.6 关于Validator 302
22.7 Struts的数据验证项目部分源程序 303
第23章 Struts多模块管理 316
23.1 Struts的多模块管理 316
23.2 建立和运行Struts多模块管理应用程序 319
23.3 〈html:link〉和〈html:rewrite〉标签 323
23.4 org.apache.struts.actions.SwitchAction类 324
23.5 Struts多模块管理例子部分源程序 326
第24章 使用Struts_menu实现Web菜单功能 330
24.1 关于struts-menu 331
24.2 建立和运行使用Struts_menu实现Web菜单功能的Struts程序 332
24.3 Chapter24_2项目部分源程序 336
第25章 Struts应用程序的调试 338
25.1 Java调试器JDB 338
25.2 建立并调试一个简单的Struts程序 340
26.1 关于Hibernate 349
第五部分 Hibernate及Spring应用 349
第26章 Hibernate框架简介 349
26.2 Hibernate程序结构 350
26.3 Hibernate的映射文件 353
26.4 Hibernate查询语言(HQL) 355
第27章 Hibernate+Struts应用程序 357
27.1 建立和运行Hiberuate+Struts应用 357
27.2 本例中的关键Hibernate程序 360
27.3 Hibernate+Struts应用程序源代码分析 360
第28章 Spring框架简介 372
28.1 关于Spring框架 372
28.2 Spring Core(IoC) 373
28.3 Spring AOP 377
28.4 Spring Web MVC 381
28.5 Spring ORM 384
28.6 Spring DAO 385
28.7 Spring Context 386
第29章 Spring+Hibernate+Struts应用程序 387
29.1 关于Spring+Hibernate+Struts多层Web应用系统设计 387
29.2 建立和运行Spring+Hibernate+Struts应用程序 389
29.3 Spring+Hibernate+Struts应用程序源代码分析 393
30.1 需求分析 411
第30章 采用Struts开发一个小型的BBS论坛 411
第六部分 Struts综合应用 411
30.2 技术选择 413
30.3 系统安全 414
30.4 数据库设计 415
30.5 建立和运行BBS论坛 416
30.6 Struts BBS论坛项目文件结构 434
30.7 关于MD5算法 435
30.8 StrutsBBS论坛源代码 439
附录A 如何在Eclipse、JBuilder中使用本书的例子 459
A.1 本书例子的特点与文件结构 459
附录 459
A.2 关于war文件 460
A.3 如何在命令行下直接采用ant命令编译本书的例子 460
A.4 如何在Eclipse中使用本书的例子 462
A.5 如何在JBuilder中使用本书的例子 465
附录B Struts松耦合程序设计 468
B.1 关于松耦合 468
B.2 Java的反射机制 468
B.3 Struts松耦合机制的实现 474
B.4 最简单的Struts松耦合程序 476
B.5 采用Struts松耦合机制的Web计算器实例 479
B.6 采用Struts松耦合机制的数据库应用程序 482