第1章 Web应用开发技术概述 1
1.1 Internet基础知识 1
1.1.1 Internet的起源与发展 1
1.1.2 Internet的组成 3
1.1.3 Internet提供的服务 4
1.1.4 HTTP协议 7
1.1.5 IP地址与域名 8
1.1.6 统一资源定位器(URL) 10
1.2 Internet的WWW服务 11
1.2.1 WWW的起源与发展 11
1.2.2 WWW的特点 11
1.2.3 WWW的结构与工作模式 12
1.2.4 C/S模式与B/S模式 13
1.2.5 Web浏览器软件的发展 14
1.2.6 对Web服务器软件的要求 15
1.3 Internet上的信息携带者——网页 16
1.3.1 网页的概念 16
1.3.2 超文本、超媒体与超链接 16
1.3.3 网页的组成方式 17
1.3.4 静态网页与动态网页 17
1.3.5 网页的浏览与下载 18
1.4 动态网页技术简介 19
1.4.1 CGI技术 19
1.4.2 ASP技术 20
1.4.3 PHP技术 20
1.4.4 Servlet技术 21
1.4.5 JSP技术 21
1.5 JSP页面执行过程和技术优势 21
1.5.1 JSP页面的执行过程 21
1.5.2 JSP的技术优势 22
习题1 23
第2章 JSP语法与开发环境的搭建 24
2.1 JSP页面构成 24
2.1.1 一个简单的JSP页面 24
2.1.2 一个典型的JSP页面文件 25
2.1.3 JSP页面的构成分析 27
2.1.4 编译后的.java文件 28
2.2 JSP语法 31
2.2.1 JSP语法成分导引符 31
2.2.2 JSP标识符命名规范 32
2.2.3 模板元素 32
2.2.4 JSP中的注释 32
2.2.5 脚本元素 34
2.2.6 JSP标签 34
2.3 JSP开发运行环境的搭建 35
2.3.1 需要下载和安装的软件 35
2.3.2 JDK和MyEclipse的安装 36
2.3.3 工作空间的设置 37
2.4 JSP程序、测试运行环境的创建 39
2.4.1 MyEclipse的启动 39
2.4.2 Web工程的建立 39
2.4.3 Tomcat、测试运行环境的启动 41
2.4.4 JSP程序的编写和测试 44
2.5 MyEclipse智能助手的使用 45
习题2 49
第3章 Web编程基础——HTML语言 50
3.1 HTML概述 50
3.1.1 网页与HTML 50
3.1.2 HTML的产生和发展 51
3.1.3 HTML语法 51
3.1.4 HTML文档结构 52
3.1.5 HTML文档的四对顶级标记 54
3.1.6 HTML文档的注释 55
3.2 文字风格设置 55
3.2.1 字体标记 55
3.2.2 标题字标记 57
3.2.3 文字辅助变化标记 57
3.2.4 划线标记 57
3.2.5 转义字符与特殊字符 58
3.2.6 文字移动标记 58
3.3 段落控制标记 59
3.3.1 分行和禁行标记 59
3.3.2 段落标记 60
3.3.3 预排版标记 60
3.3.4 列表标记 61
3.3.5 块标记 64
3.4 超链接标记 64
3.4.1 〈A〉标记 65
3.4.2 嵌入图像或视频标记 67
3.4.3 嵌入背景音乐标记 68
3.4.4 嵌入声音或图像标记 68
3.4.5 地图分区域链接 69
3.4.6 〈BODY〉标记的属性与窗口色彩搭配 71
3.5 表格标记 72
3.5.1 表格的基本语法 72
3.5.2 表格的属性 73
3.5.3 单元格的属性 74
3.5.4 表格标题设置 74
3.5.5 复杂表格设计示例 74
3.6 表单标记 77
3.6.1 表单标记的一般格式 77
3.6.2 〈INPUT〉标记 78
3.6.3 列表框和下拉列表框 79
3.6.4 文本区域 79
3.7 框架结构标记 80
3.7.1 框架的基本结构 81
3.7.2 〈FRAMESET〉的常用属性 81
3.7.3 〈FRAME〉的属性 83
3.7.4 框架结构间的关联 83
3.7.5 〈IFRAME〉标记 86
3.8 CSS样式 88
3.8.1 定义CSS样式的方法 88
3.8.2 加载CSS样式的3种方式 89
3.8.3 CSS应用示例 90
习题3 91
第4章 JSP脚本语言 93
4.1 Java的数据类型和变量 93
4.1.1 Java的标识符命名规范 93
4.1.2 Java的数据类型 93
4.1.3 常量 94
4.1.4 变量 95
4.1.5 数组 100
4.1.6 注释 102
4.2 运算符和表达式 102
4.2.1 算术表达式 103
4.2.2 关系表达式 103
4.2.3 逻辑运算符 103
4.2.4 条件运算符 104
4.2.5 位运算 104
4.2.6 运算符的优先级 105
4.3 程序流程控制语句 106
4.3.1 if选择语句 106
4.3.2 switch多分支选择 108
4.3.3 for循环控制 108
4.3.4 while循环控制 109
4.3.5 do-while循环控制 110
4.3.6 break与continue 111
4.4 类、对象和包 112
4.4.1 定义类 112
4.4.2 创建对象 114
4.4.3 继承 114
4.4.4 多态 114
4.4.5 抽象类和接口(interface) 116
4.4.6 包(package) 118
4.5 Java常用类 119
4.5.1 String类 119
4.5.2 System类 122
4.5.3 Calendar类 124
4.5.4 Math类 128
4.5.5 parseInt()和parseFloat()函数 129
4.6 异常处理 130
4.6.1 异常处理 130
4.6.2 异常处理示例程序 131
4.6.3 常用异常类 132
4.7 JSP中变量的作用域与多线程问题 133
4.7.1 JSP中的变量作用域问题 134
4.7.2 多线程问题 134
习题4 136
第5章 JSP常用内置对象 137
5.1 out对象 137
5.1.1 out对象的数据成员 137
5.1.2 out对象的主要方法 137
5.1.3 out对象应用举例 138
5.2 request对象 139
5.2.1 request对象的数据成员 140
5.2.2 request对象的主要方法 140
5.2.3 请求头信息的获取 141
5.2.4 用户提交信息的获取 143
5.2.5 中文乱码的处理 145
5.3 response对象 148
5.3.1 response对象的数据成员 148
5.3.2 response对象的主要方法 149
5.3.3 response对象应用举例 150
5.4 session对象 151
5.4.1 session对象的主要方法 152
5.4.2 session对象应用举例 152
5.4.3 利用session对象设计购物车 154
5.5 application对象 157
5.5.1 application对象的主要方法 157
5.5.2 application对象应用举例 158
5.6 pageContext对象 159
5.6.1 pageContext对象的数据成员 159
5.6.2 pageContext对象的主要方法 160
5.6.3 pageContext对象应用举例 161
5.7 config、page和exception对象 164
5.7.1 config对象 164
5.7.2 exception对象 164
5.7.3 page对象 164
习题5 165
第6章 JSP标签 166
6.1 JSP指令元素 166
6.1.1 page指令 166
6.1.2 include指令 167
6.1.3 taglib指令 169
6.2 JSP动作 170
6.2.1 param动作 170
6.2.2 include动作 170
6.2.3 forward动作 173
6.2.4 useBean动作 174
6.2.5 setProperty动作 175
6.2.6 getProperty动作 176
6.2.7 plugin动作 178
6.2.8 fallback动作 179
习题6 179
第7章 使用JDBC访问数据库 180
7.1 关系型数据库与SQL语言 180
7.1.1 关系型数据库的基本概念 180
7.1.2 数据定义语言 181
7.1.3 数据操纵语言 182
7.1.4 数据查询语句 183
7.2 连接数据库的JDBC简介 184
7.2.1 JDBC结构 184
7.2.2 四类JDBC驱动程序 185
7.2.3 JDBC编程要点 186
7.2.4 常用的JDBC类与方法 186
7.3 MySQL Server数据库的安装 190
7.3.1 下载文件 190
7.3.2 MySQL的安装 190
7.3.3 MySQL的配置 193
7.3.4 测试启动MySQL 198
7.3.5 安装MySQL-Front并建库 198
7.4 使用JSP访问MySQL数据库 200
7.4.1 MySQL驱动jar包的加载 200
7.4.2 使用JSP查询MySQL数据库 201
7.4.3 向数据库插入记录 202
7.4.4 修改记录和删除记录 205
7.4.5 从表单获取数据写入数据库 206
7.5 JSP访问Microsoft数据库 209
7.5.1 数据库及表的创建 209
7.5.2 Access数据源的建立 209
7.5.3 JSP访问Access应用实例 210
7.5.4 SQL Server数据源的建立 212
7.5.5 JSP访问SQL Server应用实例 214
习题7 215
第8章 JSP与JavaBean 217
8.1 组件复用与JavaBean 217
8.1.1 组件复用技术简介 217
8.1.2 JavaBean组件模型 218
8.1.3 JavaBean的组成特性 218
8.1.4 JavaBean的其它特性 219
8.2 JSP中JavaBean的使用 220
8.2.1 JavaBean编写规范 220
8.2.2 JavaBean应用示例 221
8.2.3 JSP+JavaBean程序的开发 222
8.2.4 JavaBean的生命周期 224
8.2.5 具有索引属性的JavaBean 226
8.3 访问数据库的JavaBean 228
8.3.1 使用JSP+JavaBean查询数据库 228
8.3.2 执行各种数据库操作的JavaBean 231
8.3.3 通过JavaBean向数据库添加数据 233
8.4 JSP+JavaBean留言板案例 235
8.4.1 填写留言的界面 236
8.4.2 表示留言数据的JavaBean 237
8.4.3 执行数据库操作的JavaBean 237
8.4.4 添加留言的JSP页面 240
8.4.5 查看留言的JSP 241
8.4.6 运行效果及文件间关系分析 243
习题8 244
第9章 Servlet 246
9.1 Servlet概述 246
9.1.1 Servlet的特点 246
9.1.2 Servlet的工作原理 247
9.1.3 Servlet的应用范围 248
9.1.4 Servlet的生命周期 248
9.1.5 init()、service()和destroy()方法 249
9.2 Servlet的基本结构与成员方法 250
9.2.1 Servlet的基本层次结构 250
9.2.2 HttpServlet类的成员方法 251
9.2.3 在MyEclipse中建立Servlet 253
9.2.4 Servlet的配置文件web.xml 256
9.3 调用Servlet的多种方式 258
9.3.1 在URL中直接调用Servlet 258
9.3.2 在〈FORM〉标记中访问Servlet 259
9.3.3 利用超链接访问Servlet 261
9.3.4 在JSP文件中调用Servlet 261
9.4 两种模式的WEB应用技术 263
9.4.1 JSP+JavaBean 263
9.4.2 JSP+Servlet+JavaBean 264
9.4.3 两种模式的比较 265
9.5 Servlet模式的留言板案例 265
9.5.1 填写留言的界面 266
9.5.2 接受请求保存留言的Servlet 267
9.5.3 查看留言的Servlet 269
9.5.4 表示留言数据的JavaBean 272
9.5.5 显示留言消息的JSP 272
9.5.6 运行效果及文件间关系分析 273
9.6 Servlet的会话跟踪 275
9.6.1 获取用户的会话 275
9.6.2 Servlet购物车 277
习题9 280
第10章 JSP中的文件操作 282
10.1 File类 282
10.1.1 获取文件属性的成员方法 282
10.1.2 应用举例 283
10.2 基本输入/输出流类 285
10.2.1 InputStream类 286
10.2.2 OutputStream类 286
10.2.3 Reader类 286
10.2.4 Writer类 287
10.3 字节文件输入/输出流的读写 287
10.3.1 FileInputStream类和FileOutputStream类 287
10.3.2 字节文件的读写 288
10.4 字符文件输入/输出流的读写 292
10.4.1 FileReader类和FileWriter类 292
10.4.2 字符文件的读写 293
10.5 文件的随机输入/输出流的读写 295
10.5.1 RandomAccessFile类 295
10.5.2 RandomAccessFile类中的常用成员方法 296
10.5.3 文件位置指针的操作 297
10.6 文件的上传和下载 300
10.6.1 文件上传 300
10.6.2 文件下载 303
习题10 306
第11章 XML简介 307
11.1 XML概述 307
11.2 XML语法 308
11.2.1 XML文档结构 308
11.2.2 XML声明 310
11.2.3 XML元素 310
11.2.4 XML元素基本语法规则 310
11.2.5 XML的注释 311
11.3 根标记与特殊字符 312
11.3.1 XML文档的根标记 312
11.3.2 数据内容中的特殊字符 312
11.4 显示XML文档内容 313
11.4.1 显示没有样式表的XML文档 313
11.4.2 显示有CSS样式表的XML文档 313
11.4.3 显示有XSL样式表的XML文档 315
11.5 XML文档的生成与解释 317
11.5.1 使用Servlet动态生成XML文档 317
11.5.2 使用DOM解析XML文档 320
11.5.3 使用JSP+Dom4j解释XML文档 324
习题11 328
第十二章 综合应用案例 329
12.1 网上书店总体设计 329
12.1.1 系统功能简介 329
12.1.2 系统的文件组成及其关系 330
12.1.3 数据库表间的逻辑关系 331
12.1.4 数据表的存储结构 331
12.1.5 数据表间的关联及综合查询 333
12.2 首页模块设计与实现 333
12.2.1 主界面框架 333
12.2.2 顶行菜单条 334
12.2.3 调用的JavaBean程序 335
12.2.4 使用说明 338
12.2.5 运行效果 338
12.3 图书浏览模块 339
12.3.1 图书浏览的界面程序 339
12.3.2 执行数据库操作的javaBean 340
12.3.3 连接数据库的javaBean 341
12.4 最近新书和特价图书模块 343
12.4.1 最近新书模块 343
12.4.2 特价图书模块 344
12.5 缺书登记模块 344
12.5.1 缺书登记界面 345
12.5.2 缺书写入数据库 346
12.6 用户注册模块 348
12.6.1 用户注册的界面 348
12.6.2 用户注册验证程序 349
12.7 用户登录模块 353
12.7.1 用户登录的界面 353
12.7.2 登录验证程序 354
12.8 订购图书模块设计 357
12.8.1 订购图书界面程序 357
12.8.2 订购图书的Servlet 359
12.8.3 购书存入购物车程序 363
12.8.4 生成订单报表 365
12.9 查看订单和修改订单 367
12.9.1 查看订单 367
12.9.2 修改订书数量 372
12.9.3 修改个人资料 376