第1章 JDBC基础 1
1.1 JDBC入门 1
1.1.1 持久化 1
1.1.2 JDBC的概念 2
1.1.3 JDBC的体系结构 2
1.1.4 JDBC的常用API 3
1.1.5 JDBC URL 6
1.2 JDBC开发 6
1.2.1 JDBC程序的开发步骤 6
1.2.2 加载并注册数据库驱动 7
1.2.3 获取数据库连接 7
1.2.4 获取SQL语句执行者 8
1.2.5 执行SQL语句并操作结果集 8
1.2.6 回收数据库资源 9
1.2.7 编写一个JDBC程序 9
1.3 PreparedStatement对象的使用 11
1.3.1 SQL注入 11
1.3.2 PreparedStatement与Statement对比 11
1.3.3 使用PreparedStatement对象操作数据库 12
1.3.4 使用PreparedStatement对象实现批量处理 14
1.4 JDBC基本操作 15
1.5 本章小结 25
1.6 习题 26
第2章 JDBC进阶 28
2.1 数据库事务 28
2.1.1 事务的概念 28
2.1.2 事务的ACID属性 30
2.1.3 数据库的隔离级别 31
2.1.4 JDBC事务处理 32
2.2 数据库连接池 35
2.2.1 数据库连接池的必要性 35
2.2.2 数据库连接池 35
2.2.3 工作原理 36
2.2.4 自定义数据库连接池 37
2.3 C3P0数据库连接池 39
2.3.1 C3P0数据库连接池介绍 39
2.3.2 C3P0数据库连接池使用 40
2.4 DBCP数据库连接池 43
2.4.1 DBCP数据库连接池介绍 43
2.4.2 DBCP数据库连接池使用 43
2.5 本章小结 46
2.6 习题 46
第3章 DBUtils工具包 49
3.1 初识DBUtils 49
3.1.1 DBUtils简述 49
3.1.2 DBUtils核心成员 49
3.2 DBUtils实现DML操作 51
3.2.1 创建QueryRunner对象 51
3.2.2 DBUtils实现DML操作 51
3.3 DBUtils实现DQL操作 56
3.3.1 JavaBean 56
3.3.2 ArrayHandler与ArrayListHandler 58
3.3.3 BeanHandler与BeanListHandler 60
3.3.4 MapHandler、MapListHandler与KeyedHandler 62
3.3.5 ColumnListHandler与ScalarHandler 65
3.4 DBUtils的高级操作 67
3.4.1 DBUtils批处理 67
3.4.2 DBUtils事务管理 68
3.5 DBUtils实现Dao封装 72
3.6 本章小结 78
3.7 习题 78
第4章 XML 80
4.1 初识XML 80
4.1.1 XML简介 80
4.1.2 XML与HTML的区别 81
4.1.3 XML的功能 82
4.1.4 XML在Java Web中的应用 82
4.1.5 XML的编辑工具 83
4.2 XML的语法规范 84
4.2.1 XML文档的整体结构 84
4.2.2 文档声明 85
4.2.3 XML元素 85
4.2.4 XML属性 87
4.2.5 XML注释 88
4.2.6 转义字符的使用 89
4.2.7 CDATA区 89
4.3 XML解析 90
4.3.1 DOM解析简介 90
4.3.2 DOM解析实例 90
4.3.3 SAX解析简介 92
4.3.4 SAX解析实例 93
4.3.5 DOM与SAX的对比 95
4.3.6 DOM4J简介 95
4.3.7 DOM4J解析实例 96
4.3.8 XPath解析简介 97
4.3.9 XPath解析实例 98
4.4 本章小结 99
4.5 习题 99
第5章 Web开发前奏 101
5.1 Web基础知识 101
5.1.1 理解Web 101
5.1.2 Web的三个核心标准 102
5.1.3 C/S架构和B/S架构 103
5.2 Tomcat服务器 104
5.2.1 Tomcat简介 105
5.2.2 Tomcat的安装 105
5.2.3 Tomcat的启动及关闭 106
5.2.4 Tomcat的设置 108
5.2.5 在Eclipse中使用Tomcat 109
5.3 Web应用 114
5.3.1 Web应用简介 114
5.3.2 发布Web应用 114
5.3.3 使用Eclipse开发Web应用 116
5.4 本章小结 120
5.5 习题 120
第6章 HTTP协议 122
6.1 HTTP协议概述 122
6.1.1 HTTP协议简介 122
6.1.2 HTTP与TCP/IP 123
6.1.3 HTTP的版本 124
6.1.4 HTTP与HTTPS 126
6.1.5 HTTP报文 127
6.2 HTTP请求 129
6.2.1 HTTP的请求方法 129
6.2.2 HTTP请求行 131
6.2.3 HTTP请求头 132
6.3 HTTP响应 135
6.3.1 HTTP响应行 135
6.3.2 HTTP响应头 137
6.4 HTTP其他消息头 139
6.4.1 通用消息头 139
6.4.2 实体消息头 140
6.5 本章小结 141
6.6 习题 142
第7章 Servlet详解 144
7.1 Servlet基础 144
7.1.1 Servlet简介 144
7.1.2 Servlet接口及实现类 145
7.1.3 Servlet生命周期 147
7.2 Servlet开发 148
7.2.1 Servlet的创建 148
7.2.2 Servlet的配置 151
7.2.3 Servlet的发布及访问 153
7.3 Servlet核心API 154
7.4 ServletConfig接口 155
7.5 ServletContext接口 157
7.5.1 获取Web应用的初始化信息 157
7.5.2 获取Web应用的基础信息 159
7.5.3 作为存取数据的容器 160
7.5.4 获取Web应用的文件信息 161
7.6 HttpServletRequest接口 163
7.6.1 获取请求行信息 163
7.6.2 获取请求头信息 165
7.6.3 获取请求体信息 166
7.6.4 获取请求参数 168
7.6.5 作为存取数据的容器 171
7.6.6 请求转发 171
7.7 HttpServletResponse接口 173
7.7.1 设置响应状态 173
7.7.2 设置响应头信息 173
7.7.3 获取响应体消息 174
7.7.4 请求重定向 176
7.8 本章小结 178
7.9 习题 178
第8章 会话跟踪 180
8.1 会话简介 180
8.2 Cookie机制 181
8.2.1 Cookie简介 181
8.2.2 Cookie类 182
8.2.3 Cookie的应用 188
8.3 Session机制 190
8.3.1 Session简介 190
8.3.2 Session类 191
8.3.3 Session的生命周期 192
8.3.4 Session的应用 192
8.3.5 URL重写技术 196
8.4 本章小结 199
8.5 习题 200
第9章 JSP详解 202
9.1 JSP概述 202
9.1.1 JSP简介 202
9.1.2 JSP工作原理 206
9.1.3 JSP基本结构 207
9.2 JSP脚本元素 208
9.2.1 JSP表达式 208
9.2.2 JSP脚本片段 209
9.2.3 JSP声明 210
9.2.4 JSP注释 211
9.3 JSP指令元素 214
9.3.1 page指令 214
9.3.2 include指令 216
9.3.3 taglib指令 217
9.4 JSP动作元素 217
9.4.1 〈jsp:include〉动作元素 218
9.4.2 〈jsp:forward〉动作元素 219
9.4.3 〈jsp:param〉动作元素 220
9.4.4 与JavaBean相关的动作元素 223
9.5 JSP内置对象 225
9.5.1 概述 225
9.5.2 out对象 226
9.5.3 pageContext对象 227
9.5.4 exception对象 229
9.6 本章小结 231
9.7 习题 231
第10章 EL表达式 233
10.1 EL表达式简介 233
10.2 EL的语法 236
10.2.1 EL中的常量 236
10.2.2 EL中的变量 238
10.2.3 EL中的操作符 238
10.2.4 EL中的运算符 241
10.3 EL的隐含对象 243
10.3.1 概述 243
10.3.2 与Web域相关的隐含对象 244
10.3.3 与请求参数相关的隐含对象 245
10.3.4 其他隐含对象 247
10.4 EL的自定义函数 251
10.5 本章小结 253
10.6 习题 253
第11章 JSTL标签库 255
11.1 JSTL概述 255
11.1.1 JSTL简介 255
11.1.2 JSTL的安装使用 256
11.2 Core标签库 258
11.2.1 通用标签 259
11.2.2 条件标签 265
11.2.3 迭代标签 268
11.2.4 URL相关标签 271
11.3 I18N标签库 277
11.3.1 国际化标签 277
11.3.2 格式化标签 280
11.4 Functions标签库 283
11.5 本章小结 285
11.6 习题 285
第12章 Filter详解 287
12.1 Filter概述 287
12.1.1 Filter简介 287
12.1.2 Filter相关API 288
12.1.3 Filter的生命周期 289
12.2 Filter开发 290
12.2.1 Filter的创建 290
12.2.2 Filter的配置 293
12.3 Filter的链式调用 297
12.4 Filter的应用 300
12.4.1 使用Filter防止盗链 301
12.4.2 使用Filter过滤敏感词 303
12.4.3 使用Filter实现字符编码 306
12.5 本章小结 309
12.6 习题 309
第13章 Listener详解 311
13.1 Listener简介 311
13.2 Listener开发 312
13.3 Listener的API 316
13.3.1 与ServletContext对象相关的接口 316
13.3.2 与HttpSession对象相关的接口 319
13.3.3 与ServletRequest对象相关的接口 328
13.4 Listener的应用 332
13.5 本章小结 337
13.6 习题 338
第14章 文件上传和下载 339
14.1 文件上传简介 339
14.2 文件上传的实现 340
14.2.1 Commons FileUpload组件的核心API 340
14.2.2 Commons FileUpload组件的下载 342
14.2.3 实现单个文件上传 345
14.2.4 实现多文件批量上传 348
14.2.5 限制上传文件的类型和大小 350
14.3 文件下载简介 354
14.4 文件下载的实现 355
14.5 本章小结 357
14.6 习题 357
第15章 MVC设计模式 359
15.1 MVC设计模式简介 359
15.2 JSP开发模式 360
15.2.1 JSP Model 1模式 361
15.2.2 JSP Model 1模式的应用 362
15.2.3 JSP Model 2模式 367
15.2.4 JSP Model 2模式的应用 368
15.3 本章小结 371
15.4 习题 372
第16章 程序日志工具 374
16.1 日志机制简介 374
16.2 Log4j基础 375
16.2.1 Log4j简介 375
16.2.2 Logger 376
16.2.3 Appender 376
16.2.4 Layout 377
16.3 Log4j应用 378
16.3.1 Log4j工具的下载 378
16.3.2 Log4j工具的配置 379
16.3.3 Log4j工具的使用 380
16.4 本章小结 382
16.5 习题 382
第17章 人力资源管理系统 384
17.1 系统概述 384
17.1.1 开发背景 384
17.1.2 需求分析 385
17.1.3 开发环境 385
17.1.4 系统预览 385
17.2 数据库设计 387
17.3 搭建开发环境 389
17.4 通用模块 389
17.5 用户模块 393
17.6 招聘管理模块 404
17.7 培训管理模块 413
17.8 薪金管理模块 425
17.9 本章小结 434
17.10 习题 435