第1章 Java Web开发基础 1
1.1 Web应用概述 1
1.2 HTTP基础知识 2
1.2.1 Http请求和响应 2
1.2.2 GET和POST方法 4
1.3 Java Web开发环境构建 7
1.3.1 JDK的下载与安装、配置与使用 7
1.3.2 第一个Java程序 12
1.3.3 Tomcat的下载与配置 15
1.3.4 MyEclipse的下载、安装与配置 19
1.4 Java Web分层设计 25
1.4.1 Java Web分层设计 25
1.4.2 分层设计的优缺点 27
1.5 静态网页与动态网页 28
1.5.1 静态网页 28
1.5.2 动态网页 28
1.5.3 静态网页与动态网页的比较 28
1.6 JSP简介 29
1.6.1 JSP技术概述 29
1.6.2 构建Web应用 29
1.6.3 JSP的优点 32
1.7 本章小结 33
第2章 HTML与CSS网页开发基础 34
2.1 HTML基础知识 34
2.1.1 HTML文档结构 34
2.1.2 HTML常用标记 35
2.1.3 表格标记 45
2.1.4 HTML表单标记 50
2.1.5 框架标记 50
2.2 HTML 5 53
2.2.1 HTML 5新增的功能 53
2.2.2 HTML 5中的属性 57
2.3 CSS样式表 58
2.3.1 CSS概念 58
2.3.2 CSS的优点 59
2.3.3 CSS基本语法 59
2.3.4 CSS选择器 60
2.3.5 通用选择器 61
2.3.6 多元素组合的选择器 62
2.3.7 伪元素和伪类选择器 63
2.3.8 CSS的继承 85
2.3.9 在页面中引用CSS 87
2.4 本章小结 88
2.5 上机练习 88
第3章 JavaScript基础 89
3.1 JavaScript简介 89
3.1.1 JavaScript基本结构 89
3.1.2 JavaScript脚本的执行原理 91
3.1.3 解释型语言 91
3.2 JavaScript的基础 92
3.2.1 数据类型 92
3.2.2 JavaScript中的常量 99
3.2.3 JavaScript中的变量 100
3.2.4 类型转换 101
3.2.5 转义字符 106
3.2.6 关键字与保留字 107
3.2.7 运算符 108
3.2.8 优先级和结合性 117
3.3 流程控制语句 118
3.3.1 if语句 118
3.3.2 switch语句 121
3.3.3 循环语句 122
3.4 函数的定义与调用 126
3.4.1 函数的定义 126
3.4.2 函数的调用 126
3.5 事件处理 127
3.5.1 事件处理程序 127
3.5.2 JavaScript常用事件 129
3.6 常用对象 131
3.6.1 数组对象 131
3.6.2 string对象 132
3.6.3 数学对象 133
3.6.4 date对象 134
3.7 dom技术 134
3.7.1 dom的分层结构 134
3.7.2 查找并访问节点 135
3.8 with语句 139
3.9 异常控制语句 139
3.9.1 异常的产生 139
3.9.2 异常的捕获 140
3.10 本章小结 143
3.11 上机练习 143
第4章 JSP基本语法 144
4.1 了解JSP技术 144
4.2 JSP注释 147
4.2.1 HTML中的注释 147
4.2.2 带有JSP表达式的注释 148
4.2.3 隐藏注释 148
4.2.4 脚本程序(Scriptlet)中的注释 148
4.3 脚本标识 149
4.3.1 JSP表达式 149
4.3.2 声明标识 150
4.3.3 Scriptlet代码片段 151
4.4 动作标识 152
4.4.1 包含文件标识<jsp:include> 152
4.4.2 请求转发标识<jsp:forward> 154
4.5 指令标识 154
4.5.1 page指令 155
4.5.2 include指令 156
4.5.3 taglib指令 157
4.6 本章小结 158
4.7 上机练习 158
第5章 JSP隐式对象 159
5.1 JSP隐式对象概述 159
5.2 输入、输出对象 159
5.2.1 request隐式对象 160
5.2.2 response隐式对象 164
5.2.3 out对象 165
5.3 作用域通信对象 166
5.3.1 session对象 167
5.3.2 application对象 168
5.3.3 pageContext对象 170
5.4 Servlet对象 172
5.4.1 page对象 172
5.4.2 config对象 173
5.5 exception错误对象 173
5.6 本章小结 174
5.7 上机练习 174
第6章 JDBC技术 175
6.1 JDBC基础知识 175
6.1.1 ODBC到JDBC的发展历程 175
6.1.2 ODBC的结构模型 175
6.1.3 JDBC的诞生 176
6.1.4 JDBC体系结构 176
6.1.5 JDBC 工作原理与JDBC API 177
6.1.6 JDBC驱动的分类 177
6.2 使用JDBC连接数据库 178
6.2.1 主要的接口 178
6.2.2 结果集 179
6.2.3 连接数据库的实现步骤 180
6.3 连接池技术 184
6.3.1 JNDI 184
6.3.2 使用标准标签库中的SQL标签 188
6.3.3 简单事务处理 190
6.4 本章小结 191
6.5 上机练习 191
第7章 Servlet技术 192
7.1 Servlet运行原理 192
7.2 Servlet的优点 193
7.3 Servlet的基础知识 193
7.4 Servlet的生命周期 194
7.5 Servlet API 195
7.5.1 ServletInputStream类 195
7.5.2 ServletOutputStream类 196
7.5.3 ServletRequest接口 196
7.5.4 ServletResponse接口 197
7.5.5 HttpServletRequest接口 197
7.5.6 HttpServletResponse接口 198
7.5.7 ServletConfig接口 199
7.5.8 ServletContext接口 200
7.5.9 获取请求中的数据 200
7.5.10 重定向和请求分派 201
7.5.11 利用请求域属性传递对象数据 206
7.6 Servlet的线程安全问题 208
7.7 Servlet过滤器 209
7.8 Servlet监听器 214
7.9 本章小结 220
7.10 上机练习 220
第8章 JavaBean、标准动作与标准标签库 221
8.1 JavaBean的概念 221
8.2 编写和使用JavaBean 225
8.2.1 JavaBean的get和set方法 225
8.2.2 JSP标准动作简介 226
8.3 JSP中的标准标签库 231
8.3.1 核心标签库 232
8.3.2 国际化与格式化标签库 243
8.3.3 SQL标签库 254
8.4 本章小结 258
8.5 上机练习 258
第9章 AJAX技术 259
9.1 AJAX基础知识 259
9.2 开发AJAX 259
9.3 用AJAX实现登录 262
9.3.1 表单验证需求 262
9.3.2 服务器中实现的方法 264
9.3.3 需要注意的编码问题 266
9.4 响应的类型 267
9.4.1 文本响应类型 267
9.4.2 JSON响应类型 267
9.5 本章小结 269
9.6 上机练习 269
第10章 Struts 2技术 270
10.1 Struts 2快速入门 270
10.1.1 Struts 2的安装与配置 270
10.1.2 Struts 2简单示例 271
10.1.3 Struts 2工作流程 273
10.2 Struts 2核心概念 274
10.2.1 struts.xml文件配置 275
10.2.2 Action对象详解 277
10.3 Struts 2的配置文件 279
10.3.1 Struts 2的配置文件类型 279
10.3.2 Struts 2的包配置 280
10.3.3 名称空间配置 281
10.3.4 Action相关配置 282
10.3.5 通配符实现简化配置 284
10.3.6 返回结果的配置 285
10.4 Struts 2的开发模式 290
10.4.1 实现与ServletAPI的交互 290
10.4.2 域模型DomainModel 293
10.4.3 驱动模型ModelDriven 294
10.5 OGNL表达式语言 294
10.5.1 认识OGNL 294
10.5.2 Struts 2框架中的OGNL 295
10.5.3 操作普通的属性与方法 296
10.5.4 访问静态方法与属性 299
10.5.5 访问数组 301
10.5.6 访问List、Map集合 302
10.5.7 投影与选择 305
10.6 Struts 2的标签库 308
10.6.1 数据标签的应用 308
10.6.2 控制标签的应用 311
10.6.3 表单标签的应用 313
10.7 拦截器的使用 316
10.7.1 了解拦截器 316
10.7.2 使用拦截器 318
10.7.3 自定义拦截器 322
10.8 数据验证机制 324
10.9 本章小结 324
10.10 上机练习 324
第11章 网站的安全 325
11.1 URL操作攻击 325
11.1.1 什么是URL操作攻击 325
11.1.2 解决方法 329
11.2 Web跨站脚本攻击 329
11.2.1 什么是跨站脚本 329
11.2.2 如何防范跨站脚本攻击 332
11.3 SQL注入 333
11.3.1 什么是SQL注入 333
11.3.2 用SQL注入删除数据 338
11.3.3 防范方法 339
11.4 本章小结 339
11.5 上机练习 339
第12章 log4j使用指南 340
12.1 log4j简介 340
12.2 下载log4j 341
12.3 log4j的使用方法 342
12.3.1 日志记录器(Logger) 343
12.3.2 日志输出目的地(Appender) 343
12.3.3 日志格式化器(Layout) 344
12.3.4 log4j的配置文件 344
12.3.5 log4j的使用 348
12.4 本章总结 350
12.5 上机练习 350
第13章 JUnit使用指南 351
13.1 建立JUnit 4的开发环境 351
13.2 JUnit的使用方法 354
13.2.1 JUnit 4之前的测试用例 354
13.2.2 JUnit 4测试用例 356
13.2.3 JUnit 4其他注解的使用 360
13.3 本章总结 365
13.4 上机练习 365
第14章 简易交友系统 366
14.1 系统概述 366
14.2 需求分析 366
14.3 系统结构图 366
14.4 系统总体设计 367
14.5 数据库设计 367
14.6 项目及数据库搭建 368
14.7 数据公共类的实现 369
14.8 用户登录模块 370
14.8.1 用户注册 370
14.8.2 用户登录 375
14.9 用户列表模块 378
14.10 本章小结 385
第15章 电子商务系统 386
15.1 系统概述 386
15.2 需求分析 386
15.3 系统结构图 387
15.4 开发环境 387
15.5 数据库表设计 388
15.6 项目及数据库搭建 390
15.7 数据库公共类的实现 394
15.8 用户模块的实现 395
15.8.1 用户注册 396
15.8.2 用户登录 407
15.9 系统的主要模块 414
15.9.1 产品浏览模块 414
15.9.2 购物车模块 416
15.9.3 生成订单模块 422
15.10 本章小结 431