第1部分 Web开发基础第1章 Web应用 3
1.1 Web应用概述 3
1.2 JSP运行过程 6
1.3 JSP开发模式 6
1.4 小结 7
1.5 习题 7
第2章 HTTP协议 8
2.1 HTTP概述 8
2.2 HTTP工作原理 8
2.3 HTTP请求消息 9
2.3.1 请求消息格式 9
2.3.2 请求行 10
2.3.3 请求方式POST与GET传参数的区别 10
2.3.4 请求消息头 12
2.4 HTTP响应消息 17
2.4.1 响应消息格式 17
2.4.2 状态行 18
2.4.3 响应消息头 20
2.5 小结 24
2.6 习题 24
第3章 HTML基础 25
3.1 HTML概述 25
3.2 HTML常用标记 26
3.2.1 文档头 26
3.2.2 图片 29
3.2.3 超链接 29
3.2.4 表格 31
3.2.5 表单 34
3.2.6 其他 40
3.3 小结 40
3.4 习题 40
第2部分 JSP开发基础第4章 开发JSP应用 43
4.1 开发环境准备 43
4.1.1 JDK安装配置 43
4.1.2 安装Tomcat 47
4.1.3 安装NetBeans IDE 51
4.2 一般JavaWeb应用目录结构 55
4.3 配置文件web.xml 55
4.4 创建第一个JSP应用 58
4.5 在NetBeans IDE中开发JSP应用 60
4.5.1 创建项目 60
4.5.2 实现一个欢迎页面 65
4.5.3 部署项目 66
4.6 小结 67
4.7 习题 67
第5章 JSP基础语法 68
5.1 JSP的基本构成 68
5.2 指令元素 69
5.2.1 page指令 69
5.2.2 include指令 74
5.2.3 taglib指令 75
5.3 脚本元素 76
5.3.1 声明 76
5.3.2 JSP表达式 77
5.3.3 脚本代码 78
5.4 动作元素 79
5.4.1 <jsp:include> 79
5.4.2 <jsp:forward> 82
5.4.3 <jsp:param> 84
5.4.4 <jsp:params> 84
5.4.5 <jsp:fallback> 85
5.4.6 <jsp:plugin> 85
5.4.7 <jsp:useBean>、<jsp:setProperty>和<jsp:getProperty> 86
5.5 JSP注释 87
5.6 小结 87
5.7 习题 87
第6章 JSP内置对象 88
6.1 JSP内置对象概述 88
6.2 page对象 88
6.3 pageContext对象 89
6.3.1 获取内置对象 89
6.3.2 属性设置和获取 89
6.3.3 页面转发和包含 91
6.4 request对象 91
6.4.1 属性设置和获取 91
6.4.2 设置字符集编码 92
6.4.3 获取请求参数 92
6.4.4 获取请求行信息 93
6.4.5 获取请求头信息 95
6.4.6 获取网络信息 96
6.4.7 获取会话对象 97
6.4.8 获取请求分派对象 98
6.4.9 实践 98
6.5 response对象 100
6.5.1 设置状态行 100
6.5.2 设置响应头信息 101
6.5.3 输出响应正文 103
6.5.4 重定向 103
6.5.5 实践 103
6.6 session对象 105
6.6.1 属性设置和获取 105
6.6.2 session状态相关操作 106
6.6.3 实践 106
6.7 application对象 108
6.7.1 属性设置和获取 108
6.7.2 Web程序初始化参数设置 108
6.7.3 访问资源文件 109
6.7.4 实践 110
6.8 out对象 111
6.9 config对象 111
6.10 exception对象 112
6.11 小结 113
6.12 习题 113
第7章 JavaBean技术 114
7.1 JavaBean概述 114
7.1.1 组件技术概述 114
7.1.2 何谓JavaBean 114
7.1.3 JavaBean特征 114
7.1.4 JavaBean属性 115
7.2 JavaBean相关动作标记 117
7.2.1 <jsp:useBean> 117
7.2.2 <jsp:setProperty> 119
7.2.3 <jsp:getProperty> 121
7.3 开发JavaBean 121
7.3.1 不使用JavaBean实现注册功能 121
7.3.2 使用JavaBean实现注册功能 122
7.4 在JSP中使用JavaBean 124
7.4.1 创建JavaBean对象 124
7.4.2 访问JavaBean业务方法 125
7.4.3 读取JavaBean属性值 125
7.4.4 设置JavaBean属性值 126
7.5 JavaBean属性类型与自动转换 127
7.6 JavaBean作用范围 127
7.6.1 page范围 128
7.6.2 request范围 128
7.6.3 session范围 132
7.6.4 application范围 135
7.7 小结 136
7.8 习题 136
第8章 EL表达式语言 137
8.1 EL简介 137
8.2 EL语法 137
8.3 EL隐含对象 138
8.4 EL运算符 140
8.5 EL应用 140
8.6 EL函数 141
8.6.1 EL函数定义 141
8.6.2 EL函数使用 142
8.7 小结 143
8.8 习题 143
第9章 JSTL标记库 144
9.1 JSTL概述 144
9.2 核心标记库 144
9.2.1 核心标记库的导入 145
9.2.2 表达式操作相关的标记的使用 145
9.2.3 流程相关的标记的使用 150
9.2.4 迭代相关的标记的使用 152
9.2.5 URL相关的标记的使用 155
9.3 I18N与格式化标记库 158
9.3.1 I18N和格式化标记库的导入 159
9.3.2 国际化相关的标记的使用 159
9.3.3 数字日期格式化相关的标记的使用 162
9.3.4 示例代码 166
9.4 SQL标记库 167
9.4.1 SQL标记库的导入 167
9.4.2 标记的使用 167
9.4.3 示例代码 171
9.5 XML标记库 173
9.5.1 XML标记库的导入 173
9.5.2 标记的使用 174
9.5.3 示例代码 178
9.6 函数标记库 180
9.6.1 函数标记库的导入 181
9.6.2 标记的使用 181
9.6.3 示例代码 188
9.7 小结 189
9.8 习题 189
第10章 Servlet基础 190
10.1 Servlet概述 190
10.2 Servlet开发——登录控制器的实现 191
10.3 Servlet运行过程 192
10.4 Servlet常用编程接口 193
10.5 Servlet配置详解 198
10.6 Servlet在MVC模式中的运用 199
10.7 小结 203
10.8 习题 203
第11章 过滤器和监听器 204
11.1 过滤器 204
11.1.1 过滤器概述 204
11.1.2 过滤器相关接口介绍 205
11.1.3 过滤器开发和配置 205
11.1.4 过滤器常见应用 206
11.2 监听器 208
11.2.1 监听器概述 208
11.2.2 常用监听器接口 208
11.2.3 监听器开发和配置 210
11.2.4 监听器常见应用 211
11.3 小结 212
11.4 习题 212
第12章 使用JDBC访问Oracle数据库 213
12.1 JDBC简介 213
12.2 连接数据库 214
12.2.1 通过Thin方式连接数据库 215
12.2.2 通过OCI方式连接数据库 219
12.2.3 使用JDBC-ODBC桥接的方式连接 220
12.3 访问数据库常用接口 222
12.3.1 Statement 223
12.3.2 ResultSet 230
12.3.3 PreparedStatement 232
12.3.4 CallableStatement 236
12.4 JDBC高级功能 239
12.4.1 批处理 239
12.4.2 事务处理 242
12.4.3 元数据 243
12.5 DAO设计模式 245
12.6 数据库连接池 248
12.7 小结 249
12.8 习题 249
第3部分 案例 253
第13章 案例——在线测试系统 253
13.1 系统需求 253
13.1.1 系统目标 253
13.1.2 系统功能 253
13.2 系统架构设计 254
13.3 数据库设计 255
13.4 页面设计 256
13.5 环境准备 260
13.5.1 创建数据库表 260
13.5.2 配置数据库连接池 262
13.5.3 创建项目工程 263
13.6 公共组件实现 263
13.6.1 获取数据库连接 263
13.6.2 访问安全控制 264
13.6.3 字符集过滤 265
13.6.4 试题数据加载 266
13.7 系统功能实现 272
13.7.1 注册 272
13.7.2 登录 281
13.7.3 密码修改 284
13.7.4 退出 290
13.7.5 在线测试 291
13.8 小结 297
参考文献 298