第一部分 预备阶段 1
第1章 开发任务描述 1
1.1 开发背景 1
1.2 需求说明 1
1.2.1 术语 1
1.2.2 功能需求 2
1.2.3 系统用例 2
思考与训练 4
第2章 JSP概述 5
2.1 静态网页与动态网页 5
2.2 主流动态网站技术及实现模式 5
2.2.1 几种主流的动态网站开发技术 5
2.2.2 动态网站技术的实现模式 6
2.3 HTTP的请求/响应模型 7
2.4 JSP页面的执行流程 9
思考与训练 9
第3章 开发工具的安装与使用 10
3.1 NctBcans IDE的安装 10
3.1.1 下载安装包 10
3.1.2 安装NetBeans IDE 10
3.2 创建项目与编写程序 13
3.2.1 认识NetBeans IDE的界面 14
3.2.2 创建新项目 16
3.2.3 修改默认模板 19
3.2.4 创建JSP页面 20
3.2.5 运行JSP页面 22
3.2.6 认识JSP的页面元素 22
3.2.7 添加自定义的模板 23
3.2.8 打开/关闭项目 25
3.3 在NctBcans IDE中调试程序 25
思考与训练 28
第二部分 在开发中学习 29
第4章 论坛网站的设计 29
4.1 功能模块设计&r 30
4.2 页面列表 31
4.3 数据库结构设计 31
思考与训练 33
第5章 制作静态网页 34
5.1 制作网站的原型 34
5.2 制作注册页面 35
5.2.1 HTML的常用标签 36
5.2.2 CSS简介 41
5.2.3 使用HTML+CSS制作注册页面 46
5.2.4 JavaScript简介 49
5.2.5 为注册表单添加JavaScript验证 52
思考与训练 59
第6章 注册功能的实现 61
6.1 任务的提出与分解 61
6.2 输出信息及提取表单数据 62
6.2.1 使用page指令设置页面编码 62
6.2.2 使用out对象输出信息 62
6.2.3 使用request对象读取请求参数 63
6.2.4 任务实现 65
6.2.5 重点提示 66
6.2.6 拓展与提高 66
6.3 验证用户名的唯一性(JDBC-ODBC驱动) 69
6.3.1 使用page指令导入类包 70
6.3.2 查询数据库的一般过程 70
6.3.3 实验案例 72
6.3.4 任务实现 75
6.3.5 重点提示 77
6.3.6 拓展与提高 77
6.4 将注册信息插入到用户信息表中(一) 78
6.4.1 任务实现 79
6.4.2 重点提示 81
6.5 将注册信息插入到用户信息表中(二) 81
6.5.1 PreparedStatement接口 81
6.5.2 实验案例 83
6.5.3 任务实现 84
6.5.4 重点提示 84
6.6 页面跳转控制 84
6.6.1 <jsp:forward>动作 85
6.6.2 response对象的重定向方法 87
6.6.3 任务实现 87
6.6.4 重点提示 89
思考与训练 89
第7章 登录功能的实现 91
7.1 任务的提出与分解 91
7.2 验证登录信息(JDBC驱动) 91
7.2.1 通过JDBC访问数据库 91
7.2.2 任务实现 93
7.2.3 重点提示 95
7.3 在会话期间维持用户的登录信息 95
7.3.1 session对象的工作机制 95
7.3.2 实验案例 96
7.3.3 任务实现 98
7.3.4 重点提示 99
7.4 公共页面的处理 99
7.4.1 includc指令 100
7.4.2 <jsp:includc>动作 101
7.4.3 任务实现 102
7.4.4 重点提示 103
7.5 在线会员名单的显示 103
7.5.1 application对象的使用 103
7.5.2 任务实现 105
7.5.3 重点提示 108
7.6 使用Cookie完成自动登录功能 108
7.6.1 任务提出 108
7.6.2 Cookie的使用 109
7.6.3 任务实现 110
7.6.4 重点提示 112
思考与训练 112
第8章 帖子浏览功能的实现 114
8.1 显示所有帖子的概要信息 114
8.1.1 任务提出 114
8.1.2 JSP的表达式 114
8.1.3 任务实现 114
8.1.4 重点提示 118
8.2 搜索帖子 118
8.2.1 任务提出 118
8.2.2 自提交的表单 118
8.2.3 任务实现 119
8.3 分页显示 121
8.3.1 任务提出 121
8.3.2 分页显示的原理 121
8.3.3 任务实现 122
8.3.4 重点提示 125
思考与训练 125
第9章 回帖功能的实现 126
9.1 任务提出 126
9.2 输入回复帖的页面 126
9.2.1 HTML标签——textarea 126
9.2.2 在线编辑器FCKeditor的使用 127
9.2.3 任务实现 129
9.2.4 重点提示 134
思考与训练 134
第10章 功能的增强与改进 135
10.1 数据库通用处理类 135
10.1.1 任务提出 135
10.1.2 编写通用处理类 135
10.1.3 使用通用处理类 137
10.2 JavaBean的使用 139
10.2.1 任务提出 139
10.2.2 JavaBean的基本概念 139
10.2.3 通过JSP动作使用JavaBean 140
10.2.4 JavaBean的使用案例 141
10.2.5 任务实现 145
10.2.6 拓展与提高 148
10.2.7 重点提示 149
10.3 使用Servlet完成用户注册功能 150
10.3.1 任务提出 150
10.3.2 Servlet简介 150
10.3.3 使用Servlet接收表单数据 153
10.3.4 任务实现 156
10.3.5 重点提示 158
10.4 使用Ajax实现用户名唯一性的即时检测 158
10.4.1 任务提出 158
10.4.2 Ajax简介 158
10.4.3 Ajax的基本工作原理 158
10.4.4 任务实现 158
10.5 为用户注册添加头像上传功能 163
10.5.1 任务提出 163
10.5.2 jspSmartUpload的相关类 163
10.5.3 使用jspSmartUpload上传文件 166
10.5.4 任务实现 170
10.5.5 重点提示 174
10.6 为注册输入页面添加验证码 174
思考与训练 176
第11章 服务器的配置与网站的发布 178
11.1 Tomcat的安装与配置 178
11.1.1 Tomcat的下载 178
11.1.2 Tomcat的安装 178
11.1.3 Tomcat的启动与停止 180
11.1.4 测试Tomcat 180
11.2 Tomcat的目录结构 181
11.3 配置网站的异常处理 181
11.4 手动发布网站 183
11.5 利用NetBeans发布网站 184
思考与训练 185
第三部分 综合案例——企业网站 186
第12章 需求分析 186
12.1 开发背景 186
12.2 需求说明 186
12.2.1 用户角色 187
12.2.2 系统功能概述 187
12.3 可行性分析 188
第13章 系统设计 189
13.1 系统功能结构 189
13.1.1 网站的页面级别关系 189
13.1.2 网站的功能结构 189
13.1.3 系统架构 191
13.2 开发工具及运行环境 192
13.2.1 使用技术 192
13.2.2 开发工具 192
13.2.3 运行环境 192
13.3 项目的文件夹组织结构 192
13.4 系统预览 193
13.4.1 前台页面 193
13.4.2 后台页面 195
第14章 数据库设计 199
第15章 功能模块的设计与实现 202
15.1 公共类 202
15.1.1 数据库连接类 202
15.1.2 通用处理工具类 205
15.1.3 编码转换过滤器 207
15.1.4 数据库通用处理 209
15.1.5 公共页面 211
15.2 Model层的设计 211
15.2.1 实体类设计 211
15.2.2 DAO接口 211
15.3 前台功能模块 214
15.3.1 首页显示模块 214
15.3.2 文章显示模块 220
15.3.3 在线留言模块 225
15.4 后台功能模块 229
15.4.1 登录模块 229
15.4.2 文章管理模块 233
15.4.3 留言管理模块 241
第四部分 JSP速查参考 250
第16章 JSP的语言基础 250
16.1 HTML语言基础 250
16.1.1 HTML的标签和属性 250
16.1.2 HTML页面的基本结构 251
16.1.3 HTML的常用标签 251
16.2 JavaScript简介 250
16.2.1 JavaScript的基本语法 256
16.2.2 在页面中加入JS代码 256
16.2.3 JS的事件处理 256
16.2.4 表单数据验证的一般方式 257
16.3 Java语言基础 257
16.3.1 Java的类和对象 257
16.3.2 常用的Java类 258
16.3.3 JaVa的异常处理机制 259
第17章 JSP的页面元素 261
17.1 JSP的注释 261
17.2 JSP的指令 262
17.2.1 page(页面)指令 262
17.2.2 include(包含)指令 263
17.2.3 taglib(标签库)指令 263
17.3 JSP的代码段 263
17.4 JSP的表达式 264
17.5 JSP的标准动作 264
17.5.1 <jsp:param>动作 264
17.5.2 <jsp:include>动作 265
17.5.3 <jsp:forward>动作 265
17.5.4 使用JavaBean的系列动作 265
第18章 JSP的内建对象 267
18.1 Out对象 267
18.2 request对象 268
18.3 response对象 268
18.4 session对象 269
18.5 application对象 270
18.6 config对象 270
18.7 exception对象 270
18.8 page对象 270
18.9 pageContext对象 271
第19章 JDBC访问数据库 272
19.1 一般步骤 272
19.2 常用的接口或类 274
19.2.1 DriverManager类 274
19.2.2 Connection接口 274
19.2.3 Statement接口 274
19.2.4 PreparedStatement接口 275
19.2.5 CallablcStatcment接口 275
19.2.6 ResultSet接口 276
第20章 拾遗补缺 277
20.1 关系数据库与SQL回顾 277
20.1.1 关系数据库的基本结构 277
20.1.2 SQL语言 277
20.2 MyEclipse的安装与使用 278
20.2.1 Eclipse及MyEclipse的安装 278
20.2.2 MyEclipse的使用 283
20.3 参考链接 293