《JSP开发技术大全》PDF下载

  • 购买积分:23 如何计算积分?
  • 作  者:明日科技编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2007
  • ISBN:9787115167279
  • 页数:868 页
图书介绍:本书主要介绍了JSP进行实用程序开发的主要知识,同时在讲解中结合了大量实用而又有代表性的示例和典型应用。全书包含JSP介绍、环境搭建、开发工具、Java语言基础、JSP语法、JSP内建对象、Javabean技术、servlet技术、JSP经典设计模式、数据库的安装与创建、数据库访问技术、SQL语句在JSP中的应用等。

第1篇 JSP基础 3

第1章 JSP介绍 3

1.1 JSP技术概述 4

1.2 JSP技术特征 4

1.2.1 跨平台 4

1.2.2 分离静态内容和动态内容 4

1.2.3 可重复使用的组件 5

1.2.4 沿用了Java Servlet的所有功能 5

1.2.5 预编译 5

1.3 JSP的生命周期 5

1.4 JSP的处理过程 6

1.5 JSP与其他服务器端脚本语言的比较 6

1.5.1 CGI 6

1.5.2 ASP 7

1.5.3 PHP 7

1.5.4 JSP 7

1.6 JSP程序开发设计模式 7

1.6.1 单纯的JSP页面编程 7

1.6.2 JSP+JavaBean编程 7

1.6.3 JSP+Servlet+JavaBean编程 8

1.7 JSP应用 8

第2章 环境搭建和开发工具 11

2.1 JDK的安装与配置 12

2.1.1 JDK 1.5的下载 12

2.1.2 在Windows下安装JDK1.5 13

2.1.3 在Windows下配置和测试JDK 1.5 14

2.1.4 在Linux下安装和配置JDK 1.5 15

2.2 Tomcat服务器 16

2.2.1 Tomcat服务器的下载 16

2.2.2 在Windows下安装Tomcat服务器 17

2.2.3 在Linux下安装Tomcat服务器 18

2.2.4 配置Tomcat连接池 19

2.3 WebLogic服务器 21

2.3.1 WebLogic服务器的下载 21

2.3.2 WebLogic服务器的安装 21

2.3.3 配置WebLogic服务器 23

2.3.4 配置WebLogic连接池 27

2.4 JBoss服务器 31

2.4.1 JBoss服务器的下载与安装 32

2.4.2 JBoss服务器的应用 33

2.5 Resin服务器 34

2.5.1 Resin服务器的下载与安装 34

2.5.2 Resin服务器的应用 35

2.6 Dreamweaver 8开发工具 36

2.6.1 Dreamweaver 8的安装 36

2.6.2 Dreamweaver 8的操作环境介绍 38

2.6.3 Dreamweaver8的基本操作 41

2.7 Eclipse 3.2开发工具 44

2.7.1 Eclipse 3.2的下载与安装 44

2.7.2 Eclipse 3.2插件的安装 46

2.7.3 查询已安装的插件 48

2.7.4 常用插件资源 48

2.7.5 Eclipse 3.2快捷键 53

2.7.6 在Eclipse 3.2开发工具下创建简单的JSP程序 54

2.8 JBuilder 2007开发工具 55

2.8.1 JBuilder 2007下载与安装 55

2.8.2 JBuilder2007的新功能简介 59

2.8.3 在JBuilder 2007中配置MyEclipse 61

2.8.4 在JBuilder 2007开发工具下,创建简单的JSP程序 61

第3章 Java语言基础 63

3.1 基本语法入门 64

3.1.1 面向对象程序设计 64

3.1.2 Java类 64

3.1.3 Java类的对象 66

3.1.4 Java中的包 67

3.1.5 Java的继承 67

3.1.6 Java类的多态性 69

3.1.7 Java的接口 70

3.1.8 Java中代码的注释 71

3.2 数据类型 71

3.2.1 Java基本数据类型 72

3.2.2 常量与变量 72

3.2.3 对应基本数据类型的内置类 74

3.3 数据类型转换 78

3.3.1 自动转型 78

3.3.2 强制转型 79

3.3.3 内置类作转型 80

3.4 运算符 80

3.4.1 赋值运算符 80

3.4.2 算术运算符 81

3.4.3 关系运算符 83

3.4.4 逻辑运算符 84

3.4.5 位运算符 84

3.4.6 条件运算符 85

3.4.7 运算符的优先级与运算方向 85

3.5 流程控制语句 86

3.5.1 顺序语句 86

3.5.2 选择语句 87

3.5.3 循环语句 89

3.6 对字符串的处理 92

3.6.1 字符串的声明 92

3.6.2 常用方法 93

3.6.3 字符串的典型应用 94

3.7 数组 96

3.7.1 一维数组 96

3.7.2 二维数组 97

3.7.3 数组的复制 98

3.8 对象容器 98

3.8.1 Set容器 99

3.8.2 List容器 100

3.8.3 Map容器 101

3.9 日期类的操作 102

3.9.1 Date类 102

3.9.2 DateFormat类 103

3.9.3 Calendar类 103

3.10 异常处理 104

3.10.1 常用异常列表 104

3.10.2 异常处理的语句 104

3.10.3 使用异常处理的原则 107

3.11 JDK 1.5的新特性 107

3.11.1 泛型 108

3.11.2 foreach循环 108

3.11.3 自动实现装箱和解箱 109

3.11.4 可变参数 110

3.11.5 静态导入 110

3.11.6 枚举类型 110

3.11.7 格式化输入/输出 111

第4章 JSP语法 113

4.1 了解JSP的基本构成 114

4.1.1 JSP中的指令标识 114

4.1.2 HTML标记语言 114

4.1.3 嵌入的Java代码片段 114

4.1.4 JSP表达式 114

4.2 指令标识 115

4.2.1 page指令 115

4.2.2 include指令 117

4.2.3 taglib指令 118

4.3 脚本标识 119

4.3.1 JSP表达式 119

4.3.2 声明标识 119

4.3.3 脚本程序 120

4.4 JSP注释 122

4.4.1 HTML中的注释 122

4.4.2 带有JSP表达式的注释 122

4.4.3 隐藏注释 123

4.4.4 脚本程序中的注释 123

4.5 动作标识 126

4.5.1 〈jsp:include〉 126

4.5.2 〈jsp:forward〉 128

4.5.3 〈jsp:param〉 130

4.5.4 〈jsp:useBean〉 130

4.5.5 〈jsp:setProperty〉 136

4.5.6 〈jsp:getProperty〉 141

4.5.7 〈jsp:fallback〉 141

4.5.8 〈jsp:plugin〉 141

第5章 JSP内建对象 145

5.1 out输出对象 146

5.1.1 print()方法 146

5.1.2 getBufferSize()方法 148

5.1.3 getRemaining()方法 149

5.1.4 isAutoFlush()方法 149

5.1.5 clear()方法 150

5.1.6 clearBuffer()方法 151

5.1.7 flush()方法 151

5.1.8 close()方法 152

5.2 page对象 152

5.2.1 page对象的常用方法 152

5.2.2 page对象的简单示例 153

5.3 request对象 153

5.3.1 getParameter()方法 154

5.3.2 setAttribute()和getAttribute()方法 155

5.3.3 removeAttribute()方法 156

5.3.4 getMethod()方法 157

5.3.5 getProtoeol()方法 158

5.3.6 getRequestURI()方法 159

5.3.7 getRemoteAddr()方法 159

5.3.8 getServerPort()方法 160

5.3.9 getServerName()方法 160

5.4 response对象 160

5.4.1 sendRedirect()方法 161

5.4.2 setHeader()方法 162

5.4.3 addCookie()方法 162

5.5 session对象 163

5.5.1 setAttribute()和getAttribute()方法 164

5.5.2 invalidate()方法 165

5.5.3 removeAttribute()方法 165

5.5.4 setMaxInactiveInterval()和getMaxInactiveInterval()方法 166

5.5.5 isNew()方法 166

5.6 application对象 167

5.6.1 setAttribute()和getAttribute()方法 168

5.6.2 getServletInfo()方法 168

5.6.3 getRealPath()方法 169

5.6.4 removeAttribute()方法 169

5.7 config对象 170

5.7.1 config对象的常用方法 170

5.7.2 config对象的简单示例 171

5.8 pageContext对象 171

5.8.1 pageContext对象的常用方法 172

5.8.2 pageContext对象的简单示例 172

5.9 exception对象 173

5.9.1 exception对象的常用方法 174

5.9.2 exception对象的简单示例 174

第2篇 JSP核心技术 177

第6章 JavaBean技术 177

6.1 JavaBean概述 178

6.1.1 JavaBean技术介绍 178

6.1.2 JavaBean的种类 179

6.1.3 JavaBean的形式和要素 179

6.2 JavaBean属性 181

6.2.1 Simple属性 181

6.2.2 Indexed属性 182

6.2.3 Bound属性 182

6.2.4 Constrained属性 182

6.3 JavaBean方法 183

6.4 在JSP中使用JavaBean 183

6.4.1 JavaBean的作用域 183

6.4.2 JSP与JavaBean的结合 184

6.4.3 JavaBean的移除 187

第7章 Servlet技术 191

7.1 Servlet基础 192

7.1.1 Servlet技术简介 192

7.1.2 Servlet技术功能 192

7.1.3 Servlet技术特点 193

7.1.4 Servlet的生命周期 193

7.1.5 Servlet与JSP的区别 194

7.1.6 Servlet的代码结构 194

7.1.7 开发简单的Servlet程序 195

7.2 Servlet API编程常用接口和类 197

7.2.1 Servlet接口 197

7.2.2 HttpServlet类 197

7.2.3 ServletConfig接口 198

7.2.4 HttpServletRequest接口 198

7.2.5 HttpServletResponse接口 199

7.2.6 GenericServlet类 199

7.3 Servlet开发 200

7.3.1 Servlet的创建 200

7.3.2 Servlet的配置 201

7.4 Servlet的典型应用 203

7.4.1 通过初始化参数取得数据操作 203

7.4.2 在Servlet中实现页面转发的操作 205

7.4.3 在Servlet中获取当前页的绝对路径 205

7.4.4 在Servlet中对Cookie的操作 206

7.4.5 利用JavaBean由Servlet向JSP传递数据 208

7.5 Servlet过滤器 209

7.5.1 Servlet过滤器简介 209

7.5.2 iavax.servlet.Filter接口 209

7.5.3 iavax.servlet.FilterConfig接口 210

7.5.4 Servlet过滤器的配置 210

7.5.5 Servlet过滤器的典型应用 211

7.6 Servlet监听器 215

7.6.1 Servlet监听器简介 215

7.6.2 Servlet监听器的原理 215

7.6.3 Servlet上下文监听 215

7.6.4 HTTP会话监听 216

7.6.5 Servlet请求监听 217

7.6.6 Servlet监听器的典型应用 217

第8章 JSP经典设计模式 223

8.1 Model1:JSP+JavaBean 224

8.1.1 Model1模式简介 224

8.1.2 采用Model1模式实现显示论坛主题类别和帖子列表 224

8.2 Model2:JSP+Servlet+JavaBean 231

8.2.1 Model2模式简介 231

8.2.2 采用Model2模式实现发表帖子和回复帖子 231

8.3 两种模式的比较 234

第3篇 数据库编程技术 237

第9章 数据库的安装与创建 237

9.1 SQL Server数据库 238

9.1.1 安装SQL Server数据库 238

9.1.2 安装SQL Server SP4补丁 241

9.1.3 创建数据库 242

9.1.4 创建数据表 244

9.2 MySQL数据库 245

9.2.1 安装MySQL数据库 245

9.2.2 创建数据库 251

9.2.3 创建数据表 251

9.3 Oracle数据库 254

9.3.1 安装Oracle数据库 254

9.3.2 创建数据库 257

9.3.3 创建数据表 261

第10章 数据库访问技术 263

10.1 JDBC概述 264

10.1.1 JDBC-ODBC桥技术介绍 264

10.1.2 JDBC技术介绍 265

10.1.3 JDBC驱动类型 265

10.2 JDBC中的常用接口 266

10.2.1 Driver 266

10.2.2 DriverManager 266

10.2.3 Connection 267

10.2.4 Statement 268

10.2.5 PreparedStatement 269

10.2.6 CallableStatement 270

10.2.7 ResultSet 270

10.3 连接数据库 272

10.3.1 加载JDBC驱动程序 272

10.3.2 创建数据库连接 273

10.3.3 执行SQL语句 273

10.3.4 获得查询结果 275

10.3.5 关闭连接 276

10.4 典型JSP数据库连接 276

10.4.1 SQL Server 2000数据库的连接 277

10.4.2 SQL Server 2005数据库的连接 278

10.4.3 Access数据库的连接 279

10.4.4 MySQL数据库的连接 280

10.4.5 Oracle数据库的连接 282

10.5 开发可重用的负责数据库连接的JavaBean 283

10.6 关于数据库的典型应用 284

10.6.1 通过继承负责数据库连接的JavaBean获得数据库连接 284

10.6.2 利用实现数据分页的JavaBean对ResultSet结果集进行分页 285

10.7 应用JDBC事务 289

10.8 连接池技术 292

10.8.1 连接池简介 292

10.8.2 获得JNDI的名称实现对数据库的连接 293

第11章 SQL语句在JSP中的应用 295

11.1 SQL语言简介 296

11.2 SELECT子句 296

11.2.1 选择所有列 297

11.2.2 选择部分列 298

11.2.3 使用列别名 299

11.3 WHERE子句 302

11.3.1 使用WHERE子句定义查询条件 302

11.3.2 使用比较运算符查询 303

11.3.3 查询介于某一范围的数据 303

11.3.4 模糊查询 305

11.3.5 使用列表运算符查询 306

11.3.6 查询空数据 307

11.4 去除查询结果中的重复记录 308

11.5 ORDER BY子句 309

11.5.1 单列排序 309

11.5.2 多列排序 310

11.6 限制结果集返回的行数 311

11.6.1 在SQL Server中使用TOP关键字限制结果集返回的行数 311

11.6.2 在MySQL中使用LIMIT关键字限制结果集返回的行数 312

11.7 使用聚合函数 313

11.7.1 求和函数 313

11.7.2 求平均值函数 314

11.7.3 求最小值/最大值函数 315

11.7.4 统计记录个数的函数 315

11.8 GROUP BY子句 316

11.8.1 按单列进行分组 317

11.8.2 按多列进行分组 318

11.8.3 与聚合函数一起使用 318

11.8.4 与HAVING子句一起使用 319

11.8.5 对分组结果进行排序 320

11.9 子查询 320

11.9.1 返回单值的子查询 320

11.9.2 带IN的子查询 321

11.9.3 带NOT IN的子查询 322

11.9.4 带SOME和ANY的子查询 322

11.9.5 带ALL的子查询 322

11.9.6 带EXISTS子查询 323

11.9.7 嵌套子查询 323

11.10 连接查询 324

11.10.1 内连接 324

11.10.2 外连接 325

11.10.3 交叉连接 328

11.10.4 自连接 328

11.11 数据查询技术的典型应用 329

11.11.1 复杂条件查询 329

11.11.2 应用SQL语句进行动态数据分页 332

11.12 数据添加、修改和删除 333

11.12.1 INSERT语句 333

11.12.2 UPDATE语句 335

11.12.3 DELETE语句 336

11.13 使用SQL维护数据库 337

11.13.1 备份数据库 337

11.13.2 还原数据库 339

11.13.3 附加数据库 340

11.13.4 分离数据库 342

第12章 高性能数据处理技术 345

12.1 视图 346

12.1.1 视图的概述 346

12.1.2 创建视图的规则 346

12.1.3 新建视图 346

12.1.4 修改视图 351

12.1.5 删除视图 352

12.1.6 在JSP中应用视图显示留言信息 352

12.2 存储过程 353

12.2.1 存储过程的概述 353

12.2.2 新建存储过程 354

12.2.3 修改存储过程 358

12.2.4 删除存储过程 359

12.2.5 获取数据库中的存储过程 360

12.2.6 获取指定存储过程语句 360

12.2.7 在JSP中调用存储过程 360

12.2.8 应用存储过程验证登录用户的身份 362

12.3 触发器 363

12.3.1 触发器的概述 363

12.3.2 SQL Server触发器类型 363

12.3.3 创建触发器 363

12.3.4 删除触发器 366

12.3.5 应用触发器自动插入日志信息 366

12.4 游标 367

12.4.1 游标的概述 367

12.4.2 声明游标 368

12.4.3 打开游标 369

12.4.4 读取游标 369

12.4.5 关闭游标 370

12.4.6 释放游标 370

12.4.7 应用游标自动设置版主 370

第4篇 JSP实用组件 375

第13章 文件上传与下载组件 375

13.1 jspSmartUpload组件的安装与配置 376

13.2 jspSmartUpload组件中的主要类 377

13.2.1 File类 377

13.2.2 Files类 378

13.2.3 Request类 379

13.2.4 SmartUpload类 379

13.3 采用jspSmartUpload组件进行文件操作 381

第14章 JFreeChart与JSP动态图表 387

14.1 JFreeChart基础 388

14.1.1 JFreeChart的下载与使用 388

14.1.2 JFreeChart核心类简介 388

14.2 利用JFreeChart生成柱形图 389

14.2.1 利用DefaultCategoryDataset数据集绘制柱形图 389

14.2.2 利用XYDataset数据集绘制柱形图 392

14.3 利用JFreeChart生成饼形图 393

14.4 利用JFreeChart生成折线图 395

14.5 利用JFreeChart生成区域图 397

14.6 利用JFreeChart生成时序图 398

14.7 利用JFreeChart生成多轴图表 399

14.8 利用JFreeChart生成组合图表 401

第15章 报表组件 403

15.1 iText组件简介 404

15.2 iText组件开发 404

15.2.1 PDF文档输出的基本组成部分 404

15.2.2 PDF文档的页面设置与生成 406

15.2.3 中文的输出 407

15.2.4 表格的设置 408

15.2.5 图像处理 411

15.3 iText组件的典型应用 413

15.3.1 访问Servlet,读取PDF报表 413

15.3.2 查询数据表中的信息并显示在PDF报表 414

第16章 发送E-mail组件 419

16.1 Java Mail简介 420

16.1.1 邮件传输相关协议简介 420

16.1.2 什么是JavaMail 420

16.1.3 Java Mail关键类简介 421

16.2 建立Java Mail的开发环境 424

16.2.1 下载并构建JavaMailAPI 424

16.2.2 下载并构建JAF 424

16.3 在JSP中应用Java Mail发送邮件和接收邮件 425

16.3.1 发送普通文本邮件 425

16.3.2 发送HTML格式邮件 427

16.3.3 发送带附件的邮件 428

16.3.4 邮件群发 431

16.3.5 接收邮件 432

第17章 程序日志组件 437

17.1 Log4j简介 438

17.2 Loggers 438

17.2.1 日志输出 439

17.2.2 配置日志 439

17.2.3 日志的继承 440

17.3 Appenders 440

17.4 Layouts 441

17.5 应用日志调试程序 442

第5篇 Ajax技术 447

第18章 JavaScript脚本语言 447

18.1 JavaScript入门 448

18.1.1 JavaScript概述 448

18.1.2 JavaScript脚本的运行环境 448

18.1.3 在Web页面中使用JavaScript 448

18.2 JavaScript语言基础 450

18.2.1 常量 450

18.2.2 变量 452

18.2.3 运算符 453

18.2.4 表达式 457

18.3 流程控制结构 457

18.3.1 if条件判断语句 457

18.3.2 for循环语句 459

18.3.3 检查表单元素是否为空 460

18.3.4 for...in循环语句 461

18.3.5 while循环语句 462

18.3.6 do...while循环语句 462

18.3.7 break语句 462

18.3.8 continue语句 463

18.3.9 switch多路分支语句 463

18.4 函数 464

18.4.1 函数的定义和调用 464

18.4.2 Function()构造函数 465

18.4.3 函数直接量 466

18.5 事件 466

18.5.1 事件概述 466

18.5.2 事件类型 467

18.5.3 事件的典型应用 468

18.6 对象 470

18.6.1 Global对象 470

18.6.2 String对象 472

18.6.3 Math对象 476

18.6.4 Date对象 477

18.6.5 Window对象 479

18.6.6 Document对象 482

18.6.7 Location对象 484

18.6.8 Array对象 485

18.6.9 Function对象 487

18.6.10 Boolean对象 488

18.6.11 Number对象 489

18.6.12 History对象 489

18.7 文档对象模型 490

18.7.1 文档对象模型概述 490

18.7.2 DOM的分层结构 490

18.7.3 节点类型 491

18.7.4 DOM的核心接口 492

18.7.5 与DHTML相对的DOM 495

18.7.6 使用DOM添加和删除HTML元素 497

第19章 CSS样式 501

19.1 CSS样式表 502

19.1.1 CSS样式表的概念 502

19.1.2 CSS样式表的特点 502

19.2 如何使用CSS样式表 503

19.2.1 CSS样式表的类型 503

19.2.2 CSS样式表的写法 506

19.2.3 CSS样式表作用的优先顺序 507

19.2.4 CSS样式代码规范 507

19.3 CSS样式表的属性 507

19.3.1 字体属性 507

19.3.2 颜色和背景属性 511

19.3.3 文本属性 514

19.3.4 边框属性 520

19.3.5 定位属性 522

19.3.6 区块属性 523

19.3.7 列表属性 524

19.3.8 鼠标光标属性 527

19.3.9 空白属性 528

19.3.10 滤镜属性 530

第20章 XML入门技术 539

20.1 XML介绍 540

20.1.1 XML文档结构 540

20.1.2 XML语法要求 541

20.1.3 XML声明 541

20.1.4 元素 541

20.1.5 属性 542

20.1.6 注释 542

20.1.7 字符和实体引用 542

20.2 XML的两种语法规则 543

20.2.1 DTD文档类型定义 543

20.2.2 Schema文档规则 546

20.3 XML规范中的字符集 547

20.3.1 ASCII字符集 547

20.3.2 Unicode字符集 547

20.3.3 中文字符集 548

20.4 XML的3种显示格式 548

20.4.1 CSS样式表 548

20.4.2 XSL样式语言 549

20.4.3 XML数据岛技术 551

第21章 在JSP中应用Ajax技术 553

21.1 Ajax简介 554

21.1.1 什么是Aiax 554

21.1.2 Ajax的开发模式 554

21.1.3 Ajax的优点 554

21.2 Ajax使用的技术 555

21.2.1 JavaScript脚本语言 555

21.2.2 XMLHttpRequest 555

21.2.3 XML语言 557

21.2.4 DOM 557

21.2.5 CSS 557

21.3 搭建Ajax开发框架 558

21.4 Ajax的MVC架构设计 559

21.5 Ajax开发需要注意的问题 563

21.5.1 浏览器兼容性问题 563

21.5.2 XMLHttpRequest对象封装 563

21.5.3 性能问题 563

21.5.4 中文编码问题 563

21.6 在JSP中应用Ajax技术的典型应用 564

21.6.1 检测用户名 564

21.6.2 级联下拉列表 565

第6篇 JSP中解析XML 571

第22章 在JSP中应用DOM解析XML 571

22.1 DOM简介 572

22.2 DOM编程 572

22.2.1 DOM接口 572

22.2.2 DOM的使用 574

第23章 在JSP中应用JDOM解析XML 577

23.1 JDOM简介 578

23.1.1 JDOM的优点与不足 578

23.1.2 JDOM的使用条件 578

23.2 JDOM编程 579

23.2.1 类包解析 579

23.2.2 数据类型 579

23.2.3 格式转换 580

23.2.4 输入 581

23.2.5 输出 581

23.3 JDOM实例介绍 581

第24章 在JSP中应用SAX解析XML 585

24.1 SAX概述 586

24.2 SAX和DOM比较 586

24.3 选择DOM还是选择SAX 587

24.4 SAX编程 587

24.4.1 SAX常用接口 587

24.4.2 SAX实现方法 590

第7篇 EL表达式及标签 597

第25章 EL表达式 597

25.1 EL表达式概述 598

25.1.1 EL表达式的简单使用 598

25.1.2 EL表达式的特点和使用范围 598

25.2 EL表达式的基本应用 598

25.2.1 EL表达式的语法 599

25.2.2 EL表达式的存取范围 600

25.2.3 禁用表达式 600

25.3 EL表达式的运算符 601

25.3.1 存取数据运算符 601

25.3.2 算术运算符 601

25.3.3 关系运算符 602

25.3.4 逻辑运算符 602

25.3.5 empty运算符 603

25.3.6 条件运算符 603

25.3.7 运算符的优先级 603

25.4 EL表达式中的隐含对象 604

25.4.1 pageContext对象 605

25.4.2 获取参数隐含对象 606

25.4.3 访问作用域范围的隐含对象 608

25.4.4 Cookie和initParam隐含对象 609

25.5 EL表达式中的保留字 609

25.6 EL表达式的典型应用 609

25.6.1 访问JavaBean属性的典型应用 609

25.6.2 访问集合中元素的典型应用 612

25.6.3 访问Servlet中的作用域 613

25.6.4 表达式与函数的应用 615

第26章 JSTL标签库 617

26.1 JSTL核心标签库 618

26.1.1 表达式标签 618

26.1.2 流程控制标签 621

26.1.3 循环标签 623

26.1.4 URL操作标签 627

26.2 JSTL的格式标签库 632

26.2.1 格式化日期与数字 632

26.2.2 读取消息资源 638

26.2.3 国际化 641

26.2.4 国际化的典型应用 642

26.3 JSTL的SQL标签库 645

26.3.1 设置数据源 645

26.3.2 SQL操作标签 646

26.4 JSTL的XML标签库 650

26.4.1 XPath简介 650

26.4.2 XPath基础 650

26.4.3 XML核心标签 651

26.4.4 XML流程控制 653

26.4.5 XML文件转换 655

26.5 JSTL的函数标签库 656

26.5.1 〈fn:contains〉 656

26.5.2 〈fn:containslgnoreCase〉 657

26.5.3 〈fn:startsWith〉 657

26.5.4 〈fn:endsWith〉 657

26.5.5 〈fn:escapeXml〉 658

26.5.6 〈fn:indexOf〉 658

26.5.7 〈fn:split〉 658

26.5.8 〈fn:join〉 659

26.5.9 〈fn:replace〉 659

26.5.10 〈fn:trim〉 659

26.5.1l 〈fn:substring〉 660

26.5.12 〈fn:substringAfter〉 660

26.5.13 〈fn:substringBefore〉 660

26.5.14 〈fn:toLowerCase〉 660

26.5.15 〈fn:toUpperCase〉 660

26.5.16 〈fn:length〉 661

第27章 自定义标签 663

27.1 自定义标签库的构建 664

27.1.1 自定义标签的定义格式 664

27.1.2 自定义标签的构成 664

27.1.3 在JSP文件中引用自定义标签 665

27.1.4 使用自定义标签的优点 666

27.1.5 自定义标签与JavaBean的区别 666

27.2 自定义标签的常用类 666

27.2.1 接口Tag 667

27.2.2 实现类TagSupport 670

27.2.3 实现类BodyTagSupport 671

27.3 嵌套标签的开发 673

27.4 循环标签的开发 676

27.5 SimpleTag接口 679

27.5.1 SimpleTag接口的生命周期 679

27.5.2 SimpleTag接口的典型应用 679

27.6 标签文件 680

27.6.1 静态标签文件 680

27.6.2 动态标签文件 681

第8篇 JSP框架技术 685

第28章 Hibernate技术 685

28.1 Hibernate简介 686

28.2 Hibernate包的下载与放置 686

28.3 Hibernate核心接口一览 687

28.3.1 Configuration接口 687

28.3.2 SessionFactory接口 687

28.3.3 Session接口 687

28.3.4 Transaction接口 687

28.3.5 Query和Criteria接口 687

28.4 Hibernate入门 688

28.4.1 Hibemate配置文件解析 688

28.4.2 编写持久化类和映射文件 689

28.4.3 持久化类映射文件解析 691

28.4.4 编写Hibemate的初始化类 692

28.4.5 开发第一个Hibernate应用 693

28.5 Hibernate访问持久化类属性的策略 695

28.6 Hibernate命名策略的运用 696

28.7 HQL检索基础 700

28.7.1 Query的list()方法 700

28.7.2 利用HQL绑定参数查询 701

28.7.3 在映射文件中定义命名查询语句 702

28.7.4 将查询结果排序 703

28.7.5 分批检索对象 704

28.7.6 利用分批检索功能开发分页Bean 705

28.7.7 比较查询 707

28.7.8 限定范围查询 708

28.7.9 逻辑关系查询 709

28.7.10 字符串匹配查询 710

28.7.11 统计查询 711

28.7.12 分组查询 712

28.8 Session接口提供的常用方法 713

28.8.1 在Hibernate中持久化类实例的3种状态 713

28.8.2 save()方法 715

28.8.3 update()方法 716

28.8.4 delete()方法 718

28.8.5 get()方法 719

28.9 控制insert和update操作 721

28.10 映射一对多关联 724

28.10.1 一对多双向关联的建立 724

28.10.2 将集合中的元素排序 726

28.10.3 过滤集合中的元素 727

28.11 级联操作在关联中的使用 727

28.11.1 none的用法 728

28.11.2 save-update的用法 729

28.11.3 delete的用法 730

28.11.4 delete-orphan的用法 730

第29章 Struts框架 733

29.1 Struts框架介绍 734

29.1.1 MVC模式 734

29.1.2 Struts框架简介 734

29.1.3 Struts框架的工作流程 735

29.2 控制器 735

29.2.1 主要控制器组件 735

29.2.2 辅助Struts Action类 739

29.3 模型 747

29.3.1 MVC设计模式中的模型 747

29.3.2 建立模型 747

29.4 视图 748

29.4.1 视图概述 748

29.4.2 Struts中的视图 749

29.4.3 视图中的ActionForm类 749

29.4.4 应用ActionForm类 749

29.5 Struts配置文件 752

29.5.1 〈struts-config〉元素 752

29.5.2 〈form-beans〉元素 752

29.5.3 〈global-exceptions〉元素 753

29.5.4 〈global-forwards〉元素 754

29.5.5 〈action-mappings〉元素 755

29.5.6 〈controller〉元素 756

29.5.7 〈message-resources〉元素 756

29.5.8 〈plug-in〉元素 757

29.6 Struts标签库 757

29.6.1 HTML标签库 758

29.6.2 Bean标签库 763

29.6.3 Logic标签库 765

29.7 Validator验证框架 768

29.7.1 Validator验证框架的安装和配置 768

29.7.2 Validator验证框架和ActionForm 774

29.7.3 Validator验证框架的国际化 775

29.8 使用Struts框架开发Web应用 776

第30章 Spring框架 783

30.1 Spring框架的组成模块 784

30.2 Spring的IoC 785

30.2.1 控制反转 785

30.2.2 依赖注入 785

30.2.3 依赖注入的3种实现类型 785

30.3 Spring的AOP 787

30.3.1 AOP简介 788

30.3.2 切面 788

30.3.3 连接点 788

30.3.4 通知 788

30.3.5 切入点 789

30.3.6 目标对象 790

30.3.7 代理 790

30.3.8 引入 790

30.3.9 织入 790

30.3.10 AOP应用 790

30.4 装配JavaBean 790

30.4.1 Spring IoC容器 790

30.4.2 定义JavaBean配置 791

30.4.3 配置JavaBean的典型应用 793

30.4.4 JavaBean的赋值标签 796

30.4.5 自动装配 798

30.5 容器的高级应用 801

30.5.1 JavaBean的预处理和后处理 801

30.5.2 容器的后处理方法 801

30.5.3 定制属性编辑器 802

30.5.4 容器与JavaBean的耦合 805

30.5.5 实现Spring的国际化 806

30.5.6 国际化的典型应用 807

30.5.7 事件的监听与发布 808

30.6 Spring的数据持久化 809

30.6.1 Spring对DAO的支持 809

30.6.2 Spring的JDBC 810

30.6.3 核心类JdbcTemplate实现JDBC操作 812

30.6.4 Spring整合Hibernate 816

30.7 Spring的Web框架 818

30.7.1 配置DispatcherServlet(分发器) 818

30.7.2 处理器映射 818

30.7.3 视图解析器 819

30.7.4 异常解析器 820

30.7.5 控制器简介 821

30.7.6 模型与视图 821

30.7.7 命令控制器 822

30.7.8 表单控制器 822

30.7.9 表单控制器的典型应用 823

30.7.10 表单验证器 826

30.7.11 多动作控制器 826

30.7.12 多动作控制器在分页上的典型应用 827

30.7.13 向导控制器 831

30.7.14 向导控制器典型应用 832

30.8 Spring标签 837

30.8.1 〈spring:bind〉标签 837

30.8.2 〈spring:message〉标签 838

第9篇 网站调试与发布 841

第31章 错误处理与程序调试 841

31.1 程序编码中出现的语法错误及处理 842

31.1.1 指令标识的语法错误 842

31.1.2 动作标识的语法错误 843

31.1.3 脚本标识中的错误 845

31.1.4 空指针错误 848

31.2 调试程序中的逻辑错误 850

第32章 Web程序优化与发布 853

32.1 从代码中优化Web程序 854

32.1.1 编写优化的JavaBean 854

32.1.2 编写优化的JSP页 854

32.2 优化配置Tomcat服务器 855

32.2.1 禁用DNS查询 855

32.2.2 加速JSP编译速度 855

32.3 发布JavaWeb程序到Internet 856

32.3.1 发布JavaWeb程序到Internet的前提条件 856

32.3.2 在Windows系统下发布JavaWeb程序 856

32.3.3 在Linux系统下发布JavaWeb程序 857

附录A 本书实例索引 861

附录B 本书视频录像索引 867