第一部分 简介与环境 3
第1章 Web应用开发基础——万丈高楼平地起 3
1.1 计算机网络基础知识 3
1.1.1 计算机网络 3
1.1.2 Internet 4
1.1.3 TCP/IP 5
1.2 IP地址、域名和URL 5
1.2.1 IP地址 5
1.2.2 域名 6
1.2.3 URL 7
1.3 Web概述 9
1.3.1 WWW万维网 9
1.3.2 什么是网页 9
1.3.3 构成网页的基本元素 10
1.3.4 网页的分类 13
1.4 Web开发与运行环境概述 14
1.4.1 简单的Web应用开发运行环境 14
1.4.2 虚拟的Web应用开发运行环境 15
1.4.3 几种Web动态网页开发技术 15
1.4.4 常用的Web动态网页开发软件 18
1.5 JSP及其相关技术介绍 21
1.5.1 Java语言 21
1.5.2 Servlet技术 21
1.5.3 JavaBean技术 22
1.5.4 JSP开发与运行环境 22
1.5.5 JSP运行机制 23
1.6 习题 24
第2章 开发环境搭建——工欲善其事,必先利其器 25
2.1 JSP开发运行环境及其安装配置 25
2.1.1 JSP安装准备工作 25
2.1.2 安装与配置JDK 26
2.1.3 服务器软件Tomcat的安装与配置 31
2.1.4 创建Web服务目录 36
2.2 JSP开发工具MyEc;opse的安装、配置与使用 38
2.2.1 Eclipse Myclipse 38
2.2.2 安装MyEclipse 38
2.2.3 配置MyEclipse 44
2.2.4 MyEclipse开发JSP程序的步骤 50
2.3 MySQL数据库的安装、配置与使用 57
2.3.1 MySQL数据库 57
2.3.2 安装MySQL 58
2.4 习题 69
2.4.1 简答题 69
2.4.2 上机练习 69
2.4.3 实训课题 69
第二部分 前端开发 73
第3章 HTML语言——一切从HTML开始 73
3.1 HTML概述 73
3.1.1 HTML入门——一个简单的HTML案例 75
3.1.2 HTML标记的基本概念 77
3.1.3 HTML文件基本架构 78
3.1.4 HTML语言的语法规范 82
3.2 HTML文本格式标记 83
3.2.1 标题标记<hn>…</hn> 83
3.2.2 文字格式标记<font>…</font> 84
3.2.3 字型设置标记 86
3.2.4 文字滚动标记 87
3.2.5 段落标记 88
3.3 图像与多媒体标记 91
3.3.1 图像标记<img> 92
3.3.2 背景音乐标记<bgsound> 93
3.3.3 多媒体标记<embed> 93
3.4 HTML的超链接标记 95
3.5 HTML的表格、列表与块容器标记 96
3.5.1 表格标记<table> 96
3.5.2 列表标记 104
3.5.3 块容器标记<div>和<span> 107
3.6 表单标记 109
3.6.1 表单标记<form>…</form> 109
3.6.2 输入标记<input> 110
3.6.3 下拉列表框标记<select>…</select> 112
3.6.4 多行文本框标记<textarea>…</textarea> 112
3.7 窗口框架标记<frameset> 114
3.7.1 窗口框架标记<frameset> 114
3.7.2 不支持框架标记<noframes> 115
3.8 页面动态刷新和浮动窗口 118
3.8.1 页面动态刷新标记<meta> 118
3.8.2 浮动窗口标记<iframe> 119
3.9 网页中嵌入Java语言小程序的标记<applet> 120
3.10习题 122
3.10.1 填空题 122
3.10.2 选择题 122
3.10.3 简答题 124
3.10.4 实训题 124
第4章 网页布局之DIV+CSS——从此变得美丽 125
4.1 CSS基础 125
4.1.1 CSS的创建与使用 125
4.1.2 CSS语法 128
4.1.3 派生选择器 130
4.1.4 id选择器 131
4.1.5 CSS类选择器 132
4.1.6 CSS属性选择器 133
4.2 CSS样式 134
4.2.1 CSS背景 134
4.2.2 CSS文本 137
4.2.3 CSS字体 141
4.2.4 CSS链接 144
4.2.5 CSS列表 145
4.2.6 CSS表格 145
4.2.7 CSS轮廓 147
4.2.8 CSS对齐 148
4.3 CSS框模型 149
4.4 CSS边距 150
4.5 DIV+CSS网页布局 151
4.5.1 块状元素和内联元素 151
4.5.2 制作网页导航条 154
4.5.3 网页布局设计 158
4.6 习题 161
第5章 JavaScript语言——网页动起来 164
5.1 JavaScript语言概述 164
5.1.1 一个简单且包含JavaScript语言的网页 164
5.1.2 JavaScript语言概述 165
5.1.3 JSP中如何嵌入JavaScript小程序 167
5.2 JavaScript的数据类型、运算符 167
5.2.1 保留字 167
5.2.2 数据类型 168
5.2.3 变量 168
5.2.4 运算符 169
5.3 JavaScript的函数 171
5.4 JavaScript的事件 172
5.5 JavaScript对象及其使用 174
5.6 JavaScript程序流程的控制 178
5.6.1 if条件判断结构 178
5.6.2 switch多路分支结构 179
5.6.3 for循环控制结构 182
5.6.4 while循环控制结构 183
5.6.5 do…while循环控制结构 185
5.7 文档对象模型DOM 186
5.7.1 文档对象模型DOM应用举例 186
5.7.2 文档对象模型DOM概述 187
5.7.3 文档对象模型DOM的节点访问方法 190
5.8 习题 192
第6章 ExtJs——把窗口系统搬到网页上来 194
6.1 ExtJs简介 194
6.1.1 ExtJs概述 194
6.1.2 ExtJs的安装 195
6.1.3 ExtJs的开发步骤 200
6.2 ExtJs组件 203
6.2.1 ExtJs组件介绍 203
6.2.2 组件的属性配置与事件处理 207
6.3 ExtJs面板Panel 208
6.4 ExtJs窗口Window 210
6.5 ExtJs布局Layout 212
6.5.1 布局概述 212
6.5.2 Border布局 214
6.5.3 Column布局 215
6.5.4 Fit布局 217
6.5.5 Form布局 218
6.5.6 Accordion布局 219
6.5.7 Table布局 221
6.6 员工管理系统的前台界面设计 222
6.6.1 主界面设计 222
6.6.2 员工添加界面设计 225
6.6.3 员工信息维护界面设计 227
6.7 习题 233
第三部分 后端开发 237
第7章 Web服务端程序——有人做面子,就得有人做里子 237
7.1 Web服务端简介 237
7.2 Web服务端语言迭代历史 238
7.3 习题 247
第8章 Servlet——继往开来 248
8.1 Servlet工作原理 248
8.1.1 Servlet概述 248
8.1.2 Servlet的层次结构 249
8.1.3 Servlet的生命周期 251
8.2 Servlet创建与使用 252
8.2.1 Servlet程序的编程过程 252
8.2.2 第一个Servlet程序 255
8.3 doGet与doPost方法 257
8.4 重定向与转发 264
8.4.1 转发跳转 264
8.4.2 重定向跳转 265
8.5 习题 266
第9章 JSP页面与标记——杂烩饭 267
9.1 JSP概述 267
9.1.1 JSP是什么 267
9.1.2 为什么要有JSP 269
9.2 JSP工作原理 270
9.3 JSP语法 272
9.3.1 JSP脚本 272
9.3.2 JSP声明 272
9.3.3 JSP注释 273
9.3.4 JSP指令 273
9.3.5 JSP表达式 273
9.3.6 JSP控制流 275
9.4 JSP指令 277
9.4.1 page指令 277
9.4.2 include指令 284
9.5 JSP动作元素 285
9.6 习题 287
第10章 JSP内置对象——通于天地谓之神 288
10.1 JSP内置对象简介 288
10.2 out对象 289
10.2.1 输出信息的方法 289
10.2.2 与缓冲区相关的方法 290
10.3 request对象 291
10.3.1 用request读取客户端传递来的参数 291
10.3.2 request作用范围变量 297
10.3.3 用request读取系统信息 301
10.3.4 用request读取HTTP请求报头信息 303
10.3.5 用request读取Cookie 304
10.3.6 用request选择国际化信息 308
10.4 response对象 308
10.4.1 输出缓冲区与响应提交 308
10.4.2 HTTP响应报头设置 309
10.4.3 用response实现文件下载 312
10.5 application对象 315
10.5.1 用application访问Web应用的初始参数 315
10.5.2 application作用范围变量 316
10.5.3 用application对象读取Servlet容器信息 317
10.5.4 用application记录操作日志 318
10.6 session对象 319
10.6.1 用URL重写实现session跟踪 319
10.6.2 用cookie实现session跟踪 321
10.6.3 用隐藏表单域实现session跟踪 323
10.6.4 session作用范围变量与session跟踪 326
10.7 其他JSP内置对象 331
10.7.1 config隐含对象 331
10.7.2 exception隐含对象 332
10.7.3 page隐含对象 333
10.7.4 pageContext隐含对象 333
10.8 习题 334
第11章 JavaBean——矩不正,不可为方;规不正,不可为圆 337
11.1 JavaBean的定义 337
11.2 在JSP中使用一般Java类 339
11.3 在JSP中使用JavaBean 340
11.4 习题 343
第12章 数据持久化——志不强则智不达 345
12.1 为何要做数据持久化 345
12.2 文件存储 345
12.2.1 文件读取 345
12.2.2 文件写入 348
12.2.3 文件随机读写 349
12.2.4 网页中的读写 350
12.2.5 文件数据存储格式 351
12.3 数据库读写 353
12.3.1 数据库之思想 353
12.3.2 建立数据库 354
12.3.3 连接数据库 361
12.3.4 数据库查询 365
12.4 登录案例 366
12.5 习题 376
第13章 Hibernate——镜花亦花,水月亦月 377
13.1 使用Hibernate进行数据库读写 377
13.2 Hibernate的配置 377
13.3 使用Hibernate进行开发 384
13.4 习题 391
第14章 MVC架构与Struts——三权分立,各司其职 392
14.1 MVC模式简介 392
14.1.1 MVC的产生原因 392
14.1.2 MVC基本概念 398
14.1.3 历史上的MVC 400
14.2 自己动手实现MVC 400
14.3 Struts入门 405
14.3.1 Struts简介 405
14.3.2 Struts环境配置 405
14.3.3 Hello Struts 409
14.4 Struts进阶 412
14.4.1 Struts处理表单和URL参数 412
14.4.2 Action属性的输出 412
14.4.3 用户登录实例 413
14.5 习题 417
第15章 Spring之旅——保姆改变世界 418
15.1 依赖注入思想 418
15.1.1 “吃饭问题”的硬编码 418
15.1.2 “吃饭问题”的工厂模式 419
15.1.3 “食品厂”的反射机制实现 420
15.1.4 “吃饭问题”的反转控制 421
15.2 Spring中的依赖注入实现 422
15.2.1 Spring安装 422
15.2.2 Spring中的“吃饭问题” 424
15.2.3 “吃饭问题”之我的鸡蛋你别吃 425
15.2.4 “吃饭问题”之花样繁多 426
15.3 面向切面的编程 427
15.4 Spring中的面向切面的编程 428
15.5 在Web中使用Spring 430
15.5.1 自定义Servlet初始化Spring 430
15.5.2 使用Spring给出的Listener初始化 432
15.5.3 使用Spring对Servlet初始化 434
15.6 习题 435
参考文献 436