第一部分 基础入门篇 2
第1章 JSP开发入门 2
1.1 JSP概述 2
1.1.1 Java简介 2
1.1.2 JSP技术简介 3
1.1.3 J2EE简介 5
1.2 JSP开发环境 7
1.2.1 JSP开发的准备工作 7
1.2.2 安装和配置JDK 7
1.2.3 安装和配置Tomcat 10
1.2.4 WebSphere和WebLogic 13
1.3 JSP开发工具简介 14
1.3.1 Eclipse 14
实例1-1 创建第一个Hello World程序 18
1.3.2 JBuilder 2005 23
第2章 Java语言基础 29
2.1 一个简单的Java程序 29
实例2-1 一个简单的Java程序 29
2.2 数据类型 30
2.2.1 常量与变量 31
2.2.2 整型数据 31
2.2.3 浮点型(实型)数据 32
2.2.4 字符型数据 32
2.2.5 布尔型数据 33
实例2-2 数据类型应用 33
2.2.6 各种数据类型间的混合运算 34
2.3 运算符和表达式 35
2.3.1 算术运算符 35
实例2-3 算术运算符的应用 35
2.3.2 关系运算符 36
2.3.3 布尔逻辑运算符 36
实例2-4 关系运算符和布尔逻辑运算符的应用 36
2.4 流程控制 37
2.4.1 分支语句 37
实例2-5 if...else语句应用 38
实例2-6 switch语句的应用 39
2.4.2 返回语句return 41
2.4.3 循环语句 41
实例2-7 循环语句的应用 43
实例2-8 使用循环语句累计求和 45
2.5 Java面向对象技术 46
2.5.1 类的基本特性 46
2.5.2 类的定义 47
2.5.3 对象实例 47
2.5.4 属性/成员变量 48
2.5.5 new操作符 48
2.5.6 操作符 48
2.5.7 成员函数定义 48
2.5.8 成员函数调用 49
2.5.9 this关键字 49
2.5.10 构造函数(Constructor) 50
2.5.11 成员函数重载 50
2.5.12 继承 50
2.5.13 super关键字 51
2.5.14 成员函数的重写(Override) 51
2.5.15 动态成员函数发送 51
2.5.16 final关键字 52
2.5.17 静态(static) 52
2.5.18 抽象(abstract) 53
第3章 JSP语法详解 54
3.1 JSP初步 54
3.1.1 一个典型的JSP程序 54
实例3-1 简单JSP程序 54
3.1.2 JSP的结构 55
3.2 JSP注释 56
3.2.1 输出注释(在客户端显示的注释) 56
3.2.2 隐藏注释 56
实例3-2 JSP中注释的应用 56
3.2.3 JSP动态脚本的注释 57
3.3 指令元素 57
3.3.1 page指令 58
3.3.2 include指令 59
实例3-3 include指令的应用 59
3.3.3 taglib指令 60
3.4 脚本元素 61
3.4.1 声明(declaration) 61
实例3-4 declaration指令的应用 62
3.4.2 表达式(expression) 62
实例3-5 表达式的应用 62
3.4.3 脚本程序(Scriptlet) 63
实例3-6 脚本程序的应用 63
3.5 动作元素 64
3.5.1 <jsp:useBean> 64
实例3-7 〈jsp:useBean〉动作元素应用 66
3.5.2 <jsp:setProperty> 67
3.5.3 <jsp:getProperty> 68
3.5.4 <jsp:param> 69
3.5.5 <jsp:include> 69
3.5.6 <jsp:forward> 70
3.5.7 <jsp:plugin> 71
第4章 JSP的内置对象 73
4.1 request对象 73
4.1.1 request对象的方法 73
4.1.2 HTML的响应机制 75
实例4-1 GET方法提交表单数据 75
实例4-2 POST方法提交表单数据 77
实例4-3 request对象的应用 78
4.2 response对象 80
4.2.1 response对象的方法 80
4.2.2 response对象应用 81
实例4-4 response对象中使用setHeader的应用实例 81
实例4-5 response对象中使用cookie的应用实例 81
4.3 pageContext对象 83
4.3.1 pageContext对象的方法 83
4.3.2 pageContext对象应用 84
实例4-6 pageContext对象实例1 84
实例4-7 pageContext对象实例2 85
4.4 session对象 87
4.4.1 session对象的方法 87
4.4.2 session对象应用 88
实例4-8 session对象应用实例 88
4.5 out对象 90
4.5.1 out对象的方法 90
4.5.2 out对象应用 91
实例4-9 out对象应用实例 91
4.6 application对象 92
4.6.1 application对象的方法 92
4.6.2 application对象应用 93
实例4-10 application对象应用实例 93
4.7 page对象 94
4.8 config对象 94
4.8.1 config对象的方法 94
4.8.2 config对象的应用 94
实例4-11 config对象应用实例 94
4.9 exception对象 96
4.9.1 exception对象的方法 97
4.9.2 exception对象应用 97
实例4-12 exception对象应用实例 97
第5章 JavaBean在JSP中的运用 99
5.1 JavaBean简介 99
5.1.1 方法 100
5.1.2 属性 100
5.1.3 事件 100
5.2 一个JavaBean的简单例子 101
实例5-1 一个简单的JavaBean实例 101
5.3 JavaBean属性 102
5.3.1 Simple属性 103
实例5-2 Simple属性的应用 103
5.3.2 Indexed属性 104
实例5-3 Indexd属性的应用 104
5.3.3 Bound属性 105
实例5-4 Bound属性的应用 106
5.3.4 Constrained属性 107
5.4 JavaBean的方法 107
5.5 JavaBean的事件 107
5.6 JavaBean应用实例 111
实例5-5 通过JavaBean访问数据库 111
实例5-6 利用JavaBean验证用户输入 114
第6章 Servlet编程技术 119
6.1 Servlet简介 119
6.1.1 Servlet的特点 119
6.1.2 Servlet的功能 119
6.1.3 Servlet的应用 120
6.1.4 Servlet的生命周期 120
6.2 开发部署第一个Servlet 121
实例6-1 第一个Servlet程序 121
6.3 Servlet常用接口 123
6.3.1 Servlet接口 124
6.3.2 GenericServlet类 125
6.3.3 ServletRequest接口 126
6.3.4 ServletResponse接口 128
6.3.5 RequestDispatcher接口 128
6.3.6 ServletConfig接口 129
6.3.7 ServletContext接口 129
6.3.8 ServletOutputStream类 132
6.3.9 ServletInputStream类 132
6.3.10 SingleThreadModel接口 133
6.3.11 ServletException类 133
6.3.12 UnavailableException类 133
6.4 HttpServlet编程技术 134
6.4.1 HTTP简单介绍 134
6.4.2 HttpServlet编程入门 136
实例6-2 HttpServlet的简单应用 136
6.4.3 Servlet与Form表单 137
实例6-3 处理POST方法提交的数据 141
实例6-4 处理GET方法提交的数据 144
6.5 Servlet其他应用 146
实例6-5 service方法应用 146
实例6-6 GenericServlet类运用 148
第7章 数据库和JDBC技术 150
7.1 SQL Server的安装和配置 150
7.1.1 安装SQL Server 2000 150
7.1.2 启动SQL Server 154
7.1.3 SQL Server应用 154
7.2 MySQL的安装和配置 163
7.2.1 安装MySQL 5.0 163
7.2.2 登录数据库 168
7.2.3 创建数据库 169
7.2.4 创建数据库表 169
7.3 SQL简介 172
7.3.1 查询语句 172
7.3.2 SQL数据定义及操作语句的使用 177
7.4 JDBC数据库简介 179
7.4.1 数据库驱动程序 179
7.4.2 JDBC常用接口介绍 180
7.5 JSP与数据库的连接 181
7.5.1 DriverManager类 181
7.5.2 Connection类 182
7.5.3 Statement类 184
7.5.4 ResultSet类 185
7.6 JDBC连接数据库的实例 186
7.6.1 操作MySQL数据库 187
实例7-1 在控制台应用程序中使用MySQL数据库 187
实例7-2 在Servlet中连接和使用MySQL数据库 189
7.6.2 操作Aceess数据库(JDBC-ODBC Driver应用) 192
实例7-3 JDBC-ODBC Driver的使用 192
7.6.3 操作SQL Server数据库 194
实例7-4 在Servlet中连接和使用SQL Server数据库 195
7.6.4 操作Oracle数据厍 197
实例7-5 连接和使用Oracle数据库 197
7.6.5 使用PostgreSQL数据库 201
实例7-6 用JDBC连接PostgreSQL 201
7.7 JDBC数据库编程高级实例 202
实例7-7 查询并显示记录 202
实例7-8 更新记录 206
实例7-9 删除记录 207
实例7-10 动态获取表的信息 208
实例7-11 创建和删除数据库 211
实例7-12 在JSP中调用存储过程 212
实例7-13 通过JSP+JavaBean访问数据库 214
实例7-14 通过JSP+Servlet访问数据库 217
实例7-15 分页显示记录 221
实例7-16 使用JavaBean实现数据库分页查询 231
第8章 JSP开发常见问题与技巧 237
8.1 JSP页面上的错误处理 237
8.2 在JSP程序中捕获异常 240
8.3 中文显示问题 242
第二部分 常用模块篇 246
第9章 用户登录模块 246
9.1 系统分析 246
9.1.1 需求分析 246
9.1.2 系统设计 246
9.2 系统结构 247
9.3 数据库分析 248
9.4 系统实现 248
9.4.1 系统登录页 248
9.4.2 系统验证页 250
9.4.3 验证图生成页 252
9.4.4 连接数据库JavaBean程序 254
9.5 开发技巧 255
9.5.1 安装和配置JDK 255
9.5.2 安装和配置Tomcat 256
9.6 系统测试 257
9.6.1 系统配置 257
9.6.2 系统测试 258
第10章 用户注册模块 259
10.1 系统分析 259
10.1.1 需求分析 259
10.1.2 系统设计 259
10.2 系统结构 260
10.3 数据库分析 261
10.4 系统实现 261
10.4.1 系统注册页 261
10.4.2 注册程序 263
10.4.3 连接数据库bean程序 264
10.4.4 用户信息修改程序 266
10.5 开发技巧 271
10.5.1 开发过程简介 271
10.5.2 当前流行的软件过程 272
10.5.3 RUP过程简介 272
10.6 系统测试 272
10.6.1 系统配置 272
10.6.2 系统测试 273
第1 1章 计数器模块 274
11.1 系统分析 274
11.1.1 需求分析 274
11.1.2 系统设计 275
11.2 系统结构 276
11.2.1 Simplycount.jsp(简单计数器) 276
11.2.2 Anti-refleshcount.jsp(防刷新计数器) 276
11.2.3 Singleusercount.jsp(单用户计数器) 276
11.3 系统实现 277
11.3.1 简单计数器 277
11.3.2 防刷新计数器 278
11.3.3 单用户计数器 279
11.4 开发技巧 280
11.4.1 UML建模 280
11.4.2 Rational Rose简介 283
第12章 新闻发布模块 285
12.1 系统分析 285
12.1.1 需求分析 285
12.1.2 系统结构 285
12.2 数据库分析 286
12.3 系统实现 287
12.3.1 新闻查询模块 287
12.3.2 新闻增删改模块 293
12.3.3 新闻浏览模块 306
12.4 开发技巧 306
12.5 系统测试 308
12.5.1 系统配置 308
12.5.2 系统测试 308
第13章 文件上传下载模块 310
13.1 系统分析 310
13.1.1 需求分析 310
13.1.2 系统设计 311
13.2 系统结构 311
13.3 数据库分析 312
13.4 系统实现 312
13.4.1 上传文件选择页 312
13.4.2 文件上传处理页 314
13.4.3 文件下载页 315
13.4.4 文件下载处理页 317
13.5 开发技巧 318
13.5.1 jspSmartUpload组件 318
13.5.2 上传文件的存储模式 321
13.6 系统测试 322
13.6.1 系统配置 322
13.6.2 系统测试 322
第14章 BBS模块 324
14.1 系统分析 324
14.1.1 系统功能分析 324
14.1.2 系统功能设计 324
14.2 系统结构 325
14.3 数据库分析 325
14.4 系统实现 327
14.4.1 登录模块实现 327
14.4.2 注册模块实现 329
14.4.3 发帖和查询模块实现 332
14.4.4 回帖模块实现 337
14.5 开发技巧 341
14.6 系统测试 343
14.6.1 系统配置 343
14.6.2 系统测试 343
第15章 邮件发送模块 346
15.1 系统分析 346
15.1.1 需求分析 346
15.1.2 系统结构 346
15.2 系统实现 347
15.2.1 邮件信息输入模块 347
15.2.2 邮件发送处理模块 348
15.3 开发技巧 352
15.4 系统测试 353
15.4.1 系统配置 353
15.4.2 系统测试 353
第三部分 综合案例篇 356
第16章 在线聊天系统 356
16.1 系统分析 356
16.1.1 需求分析 356
16.1.2 系统设计 357
16.2 系统结构 359
16.3 数据库分析 362
16.4 系统实现 362
16.4.1 登录模块 362
16.4.2 聊天主页面 366
16.4.3 数据处理模块 378
16.5 开发技巧 381
16.6 系统测试 382
16.6.1 系统配置 382
16.6.2 系统测试 383
第17章 在线投票系统 384
17.1 系统分析 384
17.1.1 需求分析 384
17.1.2 系统设计 385
17.2 系统结构 387
17.3 数据库分析 389
17.4 系统实现 390
17.4.1 客户投票模块 390
17.4.2 管理员模块 397
17.4.3 数据处理模块 412
17.5 开发技巧 414
17.6 系统测试 417
17.6.1 系统配置 417
17.6.2 系统测试 418
第18章 在线考试系统 419
18.1 系统分析 419
18.1.1 需求分析 419
18.1.2 总体设计 420
18.1.3 功能设计 420
18.2 数据库分析 420
18.3 系统实现 423
18.3.1 出卷模块的实现 423
18.3.2 在线考试模块的实现 426
18.3.3 在线批改模块的实现 432
18.3.4 题库模块的实现 433
18.4 开发技巧 437
18.5 系统测试 438
18.5.1 系统配置 438
18.5.2 系统测试 438
第19章 基于Servlet的图书馆管理系统 441
19.1 需求分析 441
19.1.1 系统总体功能需求 441
19.1.2 登录验证功能需求 442
19.1.3 基本业务功能需求 442
19.1.4 数据库维护功能需求 443
19.1.5 查询功能需求 443
19.1.6 帮助功能需求 444
19.2 系统结构 444
19.2.1 用例的建立 444
19.2.2 时序图与协作图的生成 446
19.2.3 包图的生成 446
19.2.4 类图的生成 447
19.2.5 组件图的生成 449
19.2.6 系统部署图的生成 449
19.3 数据库分析 450
19.3.1 图书馆管理系统所需的表 450
19.3.2 生成数据库和表的Transact Sql脚本 452
19.4 系统实现 454
19.4.1 系统总体结构 454
19.4.2 系统登录验证模块 458
19.4.3 基本业务功能模块 464
19.4.4 数据库维护功能模块 473
19.4.5 查询功能模块 482
19.5 开发技巧 489
19.5.1 数据库连接池技术介绍 489
19.5.2 数据库连接池配置 491
19.6 系统测试 494
19.6.1 系统配置 494
19.6.2 系统测试 494