第1篇 JSP开发基础 2
第1章 JSP常用开发技术概论 2
1.1 软件编程体系概述 2
1.1.1 B/S架构编程体系 3
1.1.2 C/S架构编程体系 3
1.2 企业应用开发架构 3
1.2.1 两层架构 4
1.2.2 三层架构 4
1.2.3 N层架构 4
1.2.4 开发架构比较 5
1.3 相关语言概述 5
1.3.1 ASP简介 5
1.3.2 ASP.NET简介 6
1.3.3 JSP简介 6
1.3.4 PHP简介 7
1.4 JSP相关应用开发体系 8
1.4.1 J2SE体系简介 8
1.4.2 J2ME体系简介 8
1.4.3 J2EE体系简介 8
1.5 N层体系结构 10
1.5.1 N层开发架构 11
1.5.2 N层架构优点 12
1.6 常用应用开发环境介绍 12
1.6.1 Web服务器 12
1.6.2 数据库服务器 13
1.6.3 集成开发环境 14
小结 16
习题 16
第2章 开发环境的配置与使用 17
2.1 JSP运行环境的要求 17
2.2 安装和配置JDK 18
2.3 安装和配置TOMCAT 19
2.3.1 配置Tomcat 21
2.3.2 测试第一个JSP页面 23
2.4 集成开发环境的设置 24
2.4.1 JBuilder与Eclipse概述 24
2.4.2 安装Eclipse 25
2.4.3 Eclipse集成MyEclipse J2EE开发环境 29
2.4.4 Eclipse集成Tomcat 5.5 32
2.4.5 Eclipse开发视图介绍 34
2.4.6 开发JSP程序 35
2.5 安装和配置数据库 40
2.5.1 Oracle概述 40
2.5.2 Oracle相关技术站点 40
2.5.3 安装Oracle数据库服务器 40
2.5.4 安装SQL Server 44
小结 47
习题 47
第3章 JSP开发的相关基础 48
3.1 HTML编程技术 48
3.1.1 HTML简介 48
3.1.2 HEAD头元素 49
3.1.3 HTML的常用标记 50
3.2 CSS编程技术 62
3.2.1 CSS简介 63
3.2.2 加载CSS样式的3种方式 64
3.2.3 CSS与标记对应的3种方式 66
3.2.4 定义超级链接样式 67
3.3 JAVASCRIPT编程技术 68
3.3.1 JavaScript简介 68
3.3.2 网页中引入JavaScript 69
3.3.3 变量与数组 70
3.3.4 表达式与运算符 72
3.3.5 控制语句之条件语句 75
3.3.6 流控制语句之循环语句 77
3.3.7 JavaScript函数 80
3.3.8 事件的概念 81
3.3.9 对象处理语句 84
3.3.10 JavaScript内置对象 86
3.3.11 JavaScript的常用函数 91
3.3.12 对象层次及DOM模型 93
小结 97
习题 98
第2篇 JSP编程核心技术 100
第4章 Servlet编程技术 100
4.1 SERVLET概述 100
4.1.1 Servlet概念 100
4.1.2 Servlet的生命周期 101
4.2 SERVLET编译运行过程 102
4.2.1 Servlet文件框架 104
4.2.2 Servlet的配置文件 106
4.3 SERVLET体系结构 107
4.3.1 Java Servlet API简介 107
4.3.2 GenericServlet类和HttpServlet类 108
4.4 SERVLET环境API接口 108
4.4.1 ServletConfig接口 109
4.4.2 ServletContext接口 111
4.5 SERVLET与客户端浏览器交互 114
4.5.1 HttpServletRequest接口 114
4.5.2 HttpServletResponse接口 117
4.5.3 Servlet处理表单数据 117
4.5.4 请求重定向 118
4.5.5 页面自刷新 118
4.5.6 页面定时跳转 119
4.6 REQUESTDISPATCHER接口 119
4.6.1 控制页面跳转 120
4.6.2 控制页面包含 121
4.7 会话跟踪和应用程序事件 121
4.7.1 HttpSession接口 122
4.7.2 常用方法与例子 123
小结 125
习题 125
第5章 JSP技术 126
5.1 理解服务器端执行 126
5.2 JSP页面结构 127
5.3 编译指令 128
5.3.1 page指令 128
5.3.2 include指令 130
5.3.3 taglib指令 130
5.4 操作指令 131
5.4.1 jsp:include指令 131
5.4.2 jsp:forward指令 131
5.4.3 jsp:param指令 132
5.5 JSP代码 132
5.5.1 变量和方法 132
5.5.2 代码块 133
5.6 OUT对象 134
5.7 RESPONSE对象 135
5.7.1 网页转向 136
5.7.2 动态contentType响应 136
5.7.3 HTTP文件头响应 137
5.7.4 设置缓冲区 138
5.8 REQUEST对象 138
5.8.1 得到Form表单的信息 139
5.8.2 得到客户的信息 141
5.8.3 汉字问题两种解决方法 142
5.9 APPLICATION对象 145
5.9.1 application的自定义属性 145
5.9.2 实现聊天室 147
5.10 SESSION对象 150
5.10.1 对session的理解 150
5.10.2 自定义属性 150
5.11 COOKIE对象 156
小结 157
习题 158
第6章 JavaBean组件程序设计 159
6.1 组件技术概述 159
6.1.1 组件和容器 159
6.1.2 Bean开发工具 160
6.1.3 JavaBean简介 160
6.2 JAVABEAN编程 160
6.2.1 JavaBean的特点 160
6.2.2 JavaBean页面指令 161
6.2.3 编写JavaBean 161
6.2.4 使用JavaBean 162
6.3 常见的几种BEAN使用方法 169
6.3.1 表单Bean 169
6.3.2 页面Bean 172
6.3.3 共享Bean 172
小结 176
习题 176
第7章 MVC架构 177
7.1 面向对象设计模式 177
7.1.1 Factory模式 177
7.1.2 Singleton模式 179
7.1.3 Fa?ade模式 180
7.1.4 MVC架构模式 180
7.2 JSP设计模式 181
7.2.1 模式一:JSP+JavaBean模式 181
7.2.2 模式二:MVC模式 181
7.3 MVC在JSP中的实现模型 182
7.3.1 基于Bean的MVC模型 182
7.3.2 基于Struts的MVC模型 187
7.4 JSP编程建议 188
小结 189
习题 189
第8章 JSP常用开发技巧 190
8.1 客户端编程经典案例 190
8.1.1 动态表格彻底研究 190
8.1.2 3种网页对话框 193
8.1.3 动态网页框架彻底研究 196
8.1.4 表单验证 197
8.1.5 程序控制Form表单 199
8.1.6 执行客户端的可执行文件 201
8.2 利用第三方组件 202
8.2.1 Email组件 202
8.2.2 绘制图形 206
8.2.3 文件上传 208
8.3 国际化的问题 211
8.4 用于MD5算法加密的JAVABEAN 217
8.5 图片添加水印 218
小结 220
习题 220
第3篇 JSP数据库项目开发第9章 JDBC数据库开发接口 222
9.1 数据库应用开发概述 222
9.1.1 SQL语言 222
9.1.2 ODBC数据访问接口 223
9.1.3 JDBC数据访问接口 223
9.2 SQL语言概述 224
9.2.1 基本SQL语句 225
9.2.2 聚合函数 228
9.2.3 分组查询 229
9.2.4 交叉查询 230
9.3 JDBC的结构 231
9.3.1 JDBC的4种类型 231
9.3.2 数据驱动程序 232
9.3.3 Connection对象 232
9.3.4 Statement对象 232
9.3.5 ResultSet对象 233
9.3.6 PreparedStatement对象 236
9.3.7 CallableStatement对象 238
9.4 JDBC 4种数据访问格式 238
9.4.1 格式一:执行基本SQL语句 239
9.4.2 格式二:实现分页 239
9.4.3 格式三:执行带参数的SQL语句 241
9.4.4 格式四:执行存储过程 242
9.5 使用JDBC访问数据库 242
9.5.1 利用格式一读取Excel数据 242
9.5.2 利用格式一实现事务处理 244
9.5.3 动态合成SQL语句 246
9.5.4 利用格式二实现分页显示 248
9.5.5 利用格式三实现数据添加 256
9.6 使用JAVABEAN访问数据库 257
9.6.1 编写JavaBean 257
9.6.2 调用JavaBean 259
小结 260
习题 260
第10章 Oracle数据库应用开发 261
10.1 ORACLE常用操作界面 261
10.1.1 SQL*Plus窗口 261
10.1.2 SQL Plus Worksheet窗口 262
10.1.3 企业管理器 263
10.2 ORACLE的用户与表空间 263
10.3 ORACLE数据库表 264
10.3.1 基本语法 265
10.3.2 基本数据类型 265
10.3.3 删除表 271
10.4 表数据的完整性 271
10.4.1 默认约束 271
10.4.2 非空约束 272
10.4.3 唯一性约束 273
10.4.4 Check约束 274
10.4.5 主键约束 275
10.4.6 外键约束 276
10.5 ORACLE的JDBC驱动程序 278
10.5.1 加载JDBC驱动程序 278
10.5.2 使用JDBC连接Oracle数据库 279
10.6 访问ORACLE的常用格式 280
10.6.1 基本格式一的Oracle版本 281
10.6.2 基本格式二的Oracle版本 282
10.6.3 基本格式三的Oracle版本 283
10.7 ORACLE的存储过程 284
10.7.1 PL/SQL的基本概念 284
10.7.2 PL/SQL的存在形式 284
10.7.3 使用PL/SQL编写存储过程 287
10.8 JSP操作ORACLE的存储过程 288
10.8.1 基本格式四的Oracle版本 288
10.8.2 调用带输入输出参数的存储过程 288
小结 290
习题 290
第11章 数据持久化与Hibernate 291
11.1 数据持久化的概述 291
11.1.1 ORM的基本概念 291
11.1.2 POJO与PO的概念 292
11.1.3 JDO的实现机制 293
11.1.4 Hibernate的实现机制 293
11.1.5 Hibernate与JDBC、EJB、JDO的比较 293
11.2 HIBERNATE实现机制 294
11.3 HIBERNATE的开发过程 295
11.3.1 建议一个数据库连接 295
11.3.2 配置工程支持Hibernate 297
11.3.3 创建ORM 300
11.4 使用HIBERNATE操作数据库 306
小结 310
习题 310
第4篇 标签与Web框架 312
第12章 JSP操作XML文件 312
12.1 XML的概念 312
12.1.1 XML文档的结构 312
12.1.2 定义基本元素 313
12.1.3 使用属性 314
12.1.4 XML声明 315
12.1.5 注释 316
12.1.6 字符和实体引用 316
12.2 XML的3种显示格式 317
12.2.1 CSS样式表 318
12.2.2 XSL样式单 318
12.2.3 XML数据岛技术 320
12.3 XML的两种语法规则 323
12.3.1 DTD文档类型定义 323
12.3.2 Schema文档规则 325
12.4 字符集概述 326
12.4.1 ASCⅡ字符集 326
12.4.2 ISO 8859字符集 327
12.4.3 Unicode字符集 327
12.4.4 中文字符集 328
12.4.5 UTF-8字符集 329
12.4.6 UTF-16字符集 329
12.5 在XML中使用HTML 329
12.5.1 在XML中使用HTML标记 329
12.5.2 在XML中使用JavaScript代码 330
12.6 XML的三种应用程序接口 331
12.6.1 解析接口 331
12.6.2 解析器 332
12.7 DOM解析接口 332
12.7.1 DOM的对象 332
12.7.2 DOM树结构 333
12.7.3 DOM读取XML文件 334
12.7.4 DOM创建XML节点 335
12.8 SAX解析接口 337
12.8.1 SAX的对象 337
12.8.2 SAX读取XML文件 338
12.9 JDOM解析接口 340
12.9.1 JDOM对象 341
12.9.2 JDOM读取XML文件 341
小结 344
习题 344
第13章 JSTL标准标签库 345
13.1 JSTL的基本概述 345
13.1.1 JSTL起源 345
13.1.2 JSTL标记库简介 346
13.2 JSTL的安装与配置 347
13.2.1 JSTL的安装 347
13.2.2 JSTL示例应用 349
13.3 通用标记 351
13.3.1 <c:out>标记 351
13.3.2 <c:set>标记 353
13.3.3 <c:remove>标记 356
13.3.4 <c:catch>标记 356
13.4 条件处理 358
13.4.1 <c:if>标记 358
13.4.2 <c:choose>、<c:when>和<c:otherwise>标记 360
13.5 循环和迭代 362
13.5.1 <c:forEach>标记 362
13.5.2 <c:forTokens>标记 364
13.6 URL操作 366
13.6.1 <c:url>和<c:param>标记 366
13.6.2 <c:import>标记 368
13.6.3 <c:redirect>标记 371
13.7 SQL标记库 371
13.7.1 设置数据源 372
13.7.2 查询数据库 373
13.7.3 修改数据库 376
小结 379
习题 379
第14章 自定义标签库的开发 380
14.1 自定义标记库 380
14.1.1 自定义标记库基本概念 381
14.1.2 JavaBeans与自定义标记 382
14.2 标记文件与定义模板 383
14.2.1 标记文件的概念 383
14.2.2 自定义模板 386
14.2.3 标记文件中的变量 393
14.3 简单标记 400
14.3.1 SimpleTag接口 401
14.3.2 简单标记的基本概念 401
14.3.3 SimpleTagSupport类 402
14.3.4 简单标记实例 402
小结 406
习题 406
第15章 EL表达式语言 407
15.1 EL的基本概念 407
15.2 EL语法 409
15.2.1 EL变量范围 409
15.2.2 EL关键字 410
15.2.3 访问运算符“.”和“[]” 411
15.2.4 算术运算 412
15.2.5 关系运算 414
15.2.6 逻辑运算 417
15.2.7 empty运算符 418
15.2.8 自动类型转换 419
15.3 EL隐含对象 421
15.3.1 pageContext对象 422
15.3.2 param和paramValues 422
15.3.3 header和headerValues 422
15.3.4 cookie 423
15.3.5 initParam 425
15.3.6 属性范围 426
小结 426
习题 426
第16章 Struts应用开发框架 427
16.1 STRUTS概述 427
16.1.1 Web开发框架 427
16.1.2 Struts框架 428
16.1.3 Struts组成 428
16.1.4 安装Struts 430
16.2 STRUTS实例 430
16.2.1 简单Struts实例 430
16.2.2 实现跳转 437
16.2.3 使用Struts 439
小结 441
习题 441
第17章 Java Server Face技术 442
17.1 JSF的基本概念 442
17.2 JSF实例 443
17.2.1 编写JSP页面 445
17.2.2 实现JavaBean 447
17.2.3 编写JSF配置文件 449
17.2.4 编写Web应用配置文件 450
17.2.5 测试JSF应用 451
小结 451
习题 451
第18章 Ajax介绍 452
18.1 AJAX简介 452
18.2 AJAX的工作原理 452
18.3 AJAX的使用场合 453
18.4 AJAX开发:使用XMLHTTPREQUEST对象 453
18.4.1 XmlHttpRequest对象方法与属性 453
18.4.2 实例讲解 455
小结 458
习题 458
第5篇 软件工程实践 460
第19章 信息资源管理系统:知识管理中心 460
19.1 系统概述 460
19.2 系统设计 461
19.2.1 系统角色 462
19.2.2 功能模块 464
19.3 数据库设计 464
19.3.1 数据库的关系图 465
19.3.2 网站的配置文件 466
19.3.3 Hibernate连接的配置文件 467
19.4 注册部分的代码 471
19.5 TILES页面重构 478
19.6 基于HIBERNATE的DAO结构 480
小结 489
习题 489
第20章 统计图表系统:JFreeChart 490
20.1 图表系统简介 490
20.1.1 JFreeChart简介 490
20.1.2 JFreeChart配置安装 491
20.1.3 JFreeChart核心类库介绍 491
20.2 使用SERVLET画图 492
20.3 使用JSP画图 493
小结 507
习题 507
第21章 在线考试系统 508
21.1 系统分析与总体设计 508
21.1.1 功能描述 508
21.1.2 实现技术 509
21.2 数据库系统设计 512
21.2.1 数据库逻辑设计 512
21.2.2 数据库连接池设计 515
21.2.3 MySQL数据的安装与配置 519
21.3 考生考试模块设计 520
21.4 人员管理模块设计 533
21.5 题库管理模块设计 538
21.6 试卷管理模块设计 540
21.7 考务管理模块设计 544
小结 546
习题 546
第22章 不可轻视的项目规划与设计文档 547
22.1 需求概述 547
22.2 通用页面编写 547
22.3 系统分析 549
22.3.1 需求采集计划书 549
22.3.2 需求设计说明书 550
22.3.3 页面需求设计 553
22.3.4 开发计划书 555
22.3.5 程序概要设计 557
22.3.6 数据库概要设计 559
22.4 系统详细设计 560
22.4.1 页面详细设计 560
22.4.2 数据库详细设计 561