第1章 Web应用开发基础 1
1.1 访问网站的工作原理 1
1.1.1 B/S体系 1
1.1.2 静态网页与动态网页 2
1.2 高级Web程序设计技术基础 2
1.2.1 超文本标记语言HTML 2
1.2.2 CSS样式和Div布局 3
1.2.3 客户端脚本技术与JavaScript语言 6
1.2.4 基于对象的JavaScript库——jQuery等 8
1.2.5 面向对象的程序设计 8
1.2.6 含有数据库访问的Web程序设计 9
1.2.7 XML基础 9
1.2.8 Ajax技术简介 10
1.3 Java Web应用开发概述 13
1.3.1 JSP是一种动态网站制作技术 13
1.3.2 JSP与J2EE(Java EE)的关系 13
1.3.3 JSP网站的开发模式 14
1.4 搭建JSP网站的基本运行环境 14
1.4.1 安装Java语言开发包——JDK 14
1.4.2 安装JSP网站服务器软件——Apache Tomcat 6 15
1.4.3 Apache Tomcat使用初步 16
1.4.4 JSP网页初步 20
习题1 22
实验1 高级Web应用开发基础与JSP网站初步 24
第2章 MySQL数据库及其基本操作 27
2.1 MySQL数据库软件的安装、启动和关闭 27
2.1.1 MySQL 5.5 数据库软件的安装 27
2.1.2 MySQL服务的启动与停止 30
2.1.3 在DOS命令行方式下登录MySQL数据库服务器 31
2.1.4 在MySQL命令行方式下修改数据库服务器的登录密码 31
2.2 操作MySQL数据库 31
2.2.1 显示所有数据库(Show Databases) 31
2.2.2 创建新的数据库(Create Database) 32
2.2.3 选择数据库(Use) 32
2.2.4 显示数据库中的所有表(Show Tables) 32
2.2.5 删除数据库(Drop Database) 32
2.2.6 数据库(SQL文本)的导出与导入 32
2.3 操作MySQL数据表 33
2.3.1 新建数据表(Create Table) 33
2.3.2 查看数据表结构(Show Columns From) 33
2.3.3 修改数据表结构(Alter Table) 33
2.3.4 重命名数据表(Rename Table) 34
2.3.5 删除数据表(Drop Table) 34
2.4 操作MySQL数据 34
2.4.1 MySQL命令行方式下中文乱码解决方案 34
2.4.2 插入记录(Insert) 35
2.4.3 更新记录(Update) 35
2.4.4 删除记录(Delete) 35
2.4.5 查看数据表(Select) 35
2.5 使用MySQL的图形化操作工具 36
2.5.1 Navicat for MySQL的安装与配置 36
2.5.2 Navicat for MySQL的基本用法 36
习题2 39
实验2 MySQL数据库及其基本操作 40
第3章 Java语言程序设计 42
3.1 Java语言概述 42
3.1.1 类与对象 42
3.1.2 软件的三个层次:类—软件包—jar包 43
3.1.3 Java源程序结构 43
3.1.4 使用import语句导入软件包中的类(或接口) 44
3.1.5 四种引用类型 44
3.1.6 流程控制语句 46
3.1.7 基础类库——语言包java.lang 46
3.1.8 基础类库——输入/输出包java.io 48
3.1.9 基础类库——实用包java.util 49
3.1.10 基础类库——数据访问包java.sql 50
3.1.11 异常及处理 51
3.2 Java程序的调试、运行环境 52
3.2.1 认识JDK 52
3.2.2 手工环境下Java源程序的编译和运行 53
3.2.3 将编译/运行命令嵌入到编辑软件EditPlus中 54
3.3 在集成环境中开发Java项目 56
3.3.1 关于Eclipse与MyEclipse 56
3.3.2 安装MyEclipse for Spring 10 56
3.3.3 Java项目开发前在MyEclipse中的若干设置 57
3.3.4 新建Java项目 59
3.3.5 新建包 60
3.3.6 新建Java源程序、快速编辑、编译与运行 60
3.3.7 Java项目的导入/导出 61
3.4 用于JSP网站开发中的几个关键技术 62
3.4.1 类的继承与组合 62
3.4.2 抽象类与抽象方法 64
3.4.3 接口 64
3.4.4 静态方法、静态变量和静态类 67
3.4.5 向上转型、动态绑定与多态 68
3.5 在Java应用程序中访问MySQL数据库 70
3.5.1 JDBC工作原理 70
3.5.2 使用纯JDBC方式访问MySQL数据库 70
习题3 74
实验3(A) Java基础与Java应用程序的手工开发 76
实验3(B) 在集成环境中开发Java项目 78
实验3(C) 使用JDBC访问MySQL数据库 80
第4章 JSP网站及其基本工作原理和开发环境 81
4.1 JSP页面语法 81
4.1.1 JSP页面结构 81
4.1.2 JSP页面指令、页面包含指令和标签指令 82
4.1.3 JSP脚本元素:声明、表达式和脚本程序 83
4.1.4 JSP动作标签 83
4.1.5 EL表达式 86
4.2 JSP网站运行环境 86
4.2.1 JDK作为Java程序运行环境 86
4.2.2 使用Apache Tomcat作为JSP网站服务器 87
4.2.3 服务器软件ApacheTomcat 6的使用 87
4.3 JSP网站的基本工作原理 88
4.3.1 JSP网站的文件系统结构 88
4.3.2 JSP网站项目配置文件web.xml 88
4.3.3 访问JSP默认网站和用户网站 89
4.3.4 JSP工作原理与Servlet初步 90
4.3.5 Tomcat作为Servlet容器 94
4.4 在集成环境MyEclipse中开发Java EE项目 94
4.4.1 Java EE项目开发前在MyEclipse中的若干设置 94
4.4.2 新建Java Web项目 98
4.4.3 新建和编辑JSP文件 98
4.4.4 JSP网站项目发布与JSP网站浏览 99
4.4.5 使用File菜单实现JavaEE项目的导入和导出 100
4.5 开发含有MySQL数据库访问的JSP页面 100
4.5.1 手工开发含有MySQL数据库访问的页面 100
4.5.2 在MyEclipse中开发含有MySQL数据库访问的页面 101
习题4 102
实验4(A) 手工方式开发JSP网站 104
实验4(B) 在集成环境中开发Java EE项目 106
第5章 JSP内置对象及其使用 107
5.1 向客户端输出信息对象——out 107
5.2 响应客户端请求对象——response 107
5.2.1 重定向方法Redirect() 108
5.2.2 获得http响应流方法getWriter() 108
5.3 请求信息对象——request 109
5.3.1 获取表单传递值 110
5.3.2 获取URL传递变量 111
5.3.3 查询环境信息 112
5.3.4 设置统一的请求编码 112
5.4 会话信息对象——session 113
5.5 所有会话信息共享对象——application 115
5.6 Cookie信息的建立与使用 117
5.7 网页错误和未捕捉的例外对象——exception 119
5.8 页面上下文对象——pageContext 120
5.9 Servlet的配置对象——config 121
5.10 页对象——page 122
习题5 123
实验5 JSP内置对象的使用 124
第6章 JavaBean与MV开发模式 125
6.1 JavaBean与Java Web开发模式 125
6.1.1 JavaBean概述 125
6.1.2 JavaBean定义规范 125
6.1.3 JSP+JavaBean作为Java Web的一种开发模式 125
6.2 JavaBean的使用 126
6.2.1 将JavaBean存放到项目的特定文件夹 126
6.2.2 在JSP页面中通过动作标签使用JavaBean 126
6.2.4 使用MV模式开发的用户管理系统 134
6.3 EJB简介 138
6.3.1 EJB应用模式概述 138
6.3.2 EJB项目与JBoss容器 139
习题6 145
实验6 JavaBean与MV开发模式 147
第7章 Servlet及其在MVC开发模式中的应用 149
7.1 Servlet概述 149
7.1.1 Servlet作为特殊的Java类 149
7.1.2 Servlet与JSP之间的关系 149
7.1.3 Servlet容器及其工作原理 150
7.2 使用Servlet组件中的常用类与接口 151
7.2.1 开发Servlet的基础接口和类 152
7.2.2 在集成环境中开发Servlet的准备 155
7.2.3 实现Servlet接口 155
7.2.4 继承GenericServlet抽象类 158
7.2.5 继承HttpServlet抽象类 159
7.3 Servlet的开发与部署 163
7.3.1 Servlet中的中文乱码解决方案 163
7.3.2 手工方式开发与部署Servlet 163
7.3.3 在集成环境中开发与部署Servlet 164
7.4 Servlet的基本应用 165
7.4.1 使用Servlet处理表单 165
7.4.2 利用Servlet监听器统计网站在线人数 167
7.4.3 Servlet过滤器的使用 169
7.5 Servlet在MVC开发模式中的应用 174
7.5.1 关于MVC开发模式 174
7.5.2 Servlet在MVC开发模式中的应用 174
7.5.3 使用MVC开发的用户管理系统(完整版) 178
习题7 186
实验7(A) 手工开发和部署Servlet 188
实验7(B) 在集成环境中开发Servlet 190
实验7(C) 使用MVC模式开发Web项目 191
第8章 文件下载与文件上传 192
8.1 预备知识 192
8.1.1 文件上传与下载的基本概念 192
8.1.2 文件类java.io.File 192
8.1.3 与IO流相关的字节流对象 194
8.2 使用java.io软件包和Servlet实现文件下载 194
8.3 使用FileUpload组件实现文件上传 202
8.3.1 预备知识:集合框架与泛型 202
8.3.2 关于FileUpload组件 203
8.3.3 使用FileUpload组件实现文件上传 203
习题8 208
实验8 JSP网站中的文件下载与上传 209
第9章 Web编程框架SSH及其应用 210
9.1 SSH架构分析及其在MyEclipse中的实现 210
9.1.1 SSH框架分析 210
9.1.2 在MyEclipse中搭建Struts开发环境 212
9.1.3 在MyEclipse中搭建Hibernate开发环境 214
9.1.4 在MyEclipse中搭建Spring开发环境 220
9.2 Struts 2与控制层 221
9.2.1 Struts核心jar包提供的主要类与接口 221
9.2.2 Struts 2工作原理 222
9.2.3 Struts 2的表达式语言OGNL和常用标签 223
9.2.4 Struts开发流程及实例 225
9.3 Hibernate与数据库封装 228
9.3.1 对象关系映射ORM 228
9.3.2 Hibernate关键技术与工作原理 228
9.3.3 在MyEclipse中开发Hibernate的一般步骤 230
9.4 Spring与业务逻辑层 234
9.4.1 Spring框架组件 234
9.4.2 Spring的IoC容器 235
9.4.3 Spring中MVC的实现原理 235
9.4.4 一个Spring示例 236
9.5 整合SSH编程框架开发的综合案例——新闻网站 243
9.5.1 系统分析与数据库设计 244
9.5.2 项目文件系统 244
9.5.3 系统设计 246
习题9 255
实验9(A) Web编程框架SSH及其应用 257
实验9(B) 整合使用SSH框架开发新闻网站 259
第10章 JSP模板框架与SiteMesh 260
10.1 预备知识 260
10.1.1 SiteMesh简介 260
10.1.2 SiteMesh工作原理 261
10.1.3 SiteMesh配置及使用 261
10.2 SiteMesh的使用示例 264
习题10 269
实验10 模板软件SiteMesh的使用 270
附录一 在线测试 271
附录二 三次实验报告与课程设计 272
附录三 模拟试卷及参考答案 275
习题答案 276
参考文献 279