《JSP开发王》PDF下载

  • 购买积分:19 如何计算积分?
  • 作  者:张亚飞编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2008
  • ISBN:7121064324
  • 页数:671 页
图书介绍:本书详细介绍怎样使用JSP进行动态网站开发,它深入介绍MVC架构,同时也介绍JSF和Servlet的入门知识。本书具有严格的逻辑,对于JSP、MVC、JSF、Servlet的介绍,都遵守下面的讲解顺序:什么是(what)、为什么是(why)、怎样使用(how)。本书首先帮助用户建立首要的、基础的正确认知,而后以深入浅出的实例,说明如何利用JSP网页来实现动态网站的开发和设计。本书分为5篇,共29章,分别讲解了JSP动态网站基础入门知识,交互应用程序和数据库应用程序,JSP应用程序高级进阶,JSP应用程序架构和面向对象开发,JSP标签库、动作和架构应用。本书将基础架构和实用程序结合起来,从而使得纷繁复杂的Java架构第一次有了清晰的脉络,非常简洁地就实现了一个简单的MVC架构。

第1篇 JSP动态网站基础入门篇 1

第1章 建立首要的、基本的正确认知 3

第2章 JSP基础——JSP动态网页和Java语言基础 21

第3章 JSP基础——流程控制、数据运算和运算的封装 45

第4章 JSP基础——了解和使用Java常用内建类 71

第2篇 交互应用程序和数据库应用程序篇 97

第5章 JSP动态网页的请求和响应 99

第6章 JSP使用表单开发交互式应用程序 125

第7章 JSP和数据库集成——使用JDBC访问数据库 143

第8章 JSP和数据库集成——数据库设计和SQL语法 175

第9章 JSP和数据库集成——深入JDBC 201

第3篇 JHP应用程序高级进阶篇 235

第10章 Session、Cookies和状态管理 237

第11章 JSP内建对象 261

第12章 网页的国际化和区域化 273

第13章 JSP脚本出错、调试与异常情况处理 291

第14章 JSP网络应用程序的安全 299

第4篇 JSP应用程序架构和深入面向对象开发篇 327

第15章 JSP网络应用程序基础架构 329

第16章 在JSP内使用类和Java面向对象开发基础 341

第17章 JSP和Java Servlet的关系与部署 361

第18章 基于容器的安全和Tomcat领域(Realm) 391

第19章 使用JSP操作文件系统 407

第20章 使用JSP结合XML开发 425

第21章 使用JSP发送和接收电子邮件 455

第22章 JSP事务、JTA和关键应用程序开发 475

第5篇 JSP标签、动作和实用功能应用篇 485

第23章 在JSP网页中使用JavaBeans 487

第24章 使用统一表达式语言(Unified EL) 511

第25章 使用 JSP标准标签库(JSTL) 521

第26章 JSP的XML语法格式和标准动作标签 559

第27章 创建JSP自定义标签 571

第28章 深入JSP网络应用程序基础架构和MVC架构 593

第29章 JSF入门——使用基于MVC架构的实现 605

附录A JSP内建对象速查卡 635

附录B 常用字符集速查表 643

附录C 测试题答案 645

附录D 参考文献及资料来源 667

第1章 建立首要的、基本的正确认知 3

1.1 JSP网络应用程序的工作原理 4

1.1.1 Web应用程序的基本工作原理 4

1.1.2 JSP网络应用程序的基本工作原理 6

1.2 安装和设置JSP网络应用程序的运行环境 7

1.2.1 安装、配置JRE和JDK 8

1.2.2 安装和配置Resin 11

1.2.3 安装和配置Tomcat 12

1.2.4 创建第一个JSP网页 14

1.3 Web服务器根目录和虚拟目录 16

1.3.1 Web服务器根目录 16

1.3.2 虚拟目录 17

1.3.3 改变服务器端口号 18

1.4 测试题 19

第2章 JSP基础——JSP动态网页和Java语言基础 21

2.1 编写JSP网页的基本语法 22

2.1.1 定义JSP执行块 23

2.1.2 了解JSP处理指令 25

2.1.3 什么是脚本语言 26

2.1.4 JSP代码与HTML代码混合 27

2.1.5 怎样书写JSP代码 28

2.2 变量的定义 29

2.2.1 定义和命名变量 29

2.2.2 变量的数据类型 30

2.2.3 为变量赋值和更改变量值 32

2.2.4 使用变量和获取变量值 35

2.2.5 常量 37

2.2.6 数据类型转换 37

2.3 定义和使用数组 38

2.3.1 声明数组 38

2.3.2 声明二维或多维数组 39

2.4 定义和使用字符串 40

2.5 程序注释 41

2.5.1 使用JSP注释 41

2.5.2 使用Java注释 41

2.5.3 使用HTML注释 42

2.6 测试题 42

第3章 JSP基础——流程控制、数据运算和运算的封装 45

3.1 流程控制 46

3.1.1 if...else条件语句 46

3.1.2 switch条件语句 49

3.1.3 do...while循环 51

3.1.4 for循环 53

3.1.5 其他的流程控制 54

3.1.6 try...catch...fiinally语句 56

3.1.7 throw语句 57

3.2 数据类型和运算 58

3.2.1 算术运算符 58

3.2.2 字符串运算符 59

3.2.3 比较运算符和逻辑运算符 59

3.2.4 位运算符 61

3.2.5 赋值运算符 61

3.2.6 其他运算符 62

3.2.7 运算符的使用规则 63

3.3 引用(包含)文件 65

3.3.1 使用include指令实现SSI 65

3.3.2 被包含文件的内容 66

3.3.3 SSI的执行顺序 66

3.4 自定义函数 67

3.4.1 函数的定义 67

3.4.2 函数的调用 67

3.4.3 函数定义的位置 68

3.4.4 隐含的函数 68

3.5 变量的作用范围和生命周期 69

3.5.1 全局变量和局部变量 69

3.5.2 全局变量和局部变量的使用 69

3.6 测试题 70

第4章 JSP基础——了解和使用Java常用内建类 71

4.1 了解J2RE内建类 72

4.1.1 什么是Java软件包 72

4.1.2 了解J2RE软件包 72

4.1.3 在JSP网页中使用类和软件包 73

4.2 字符串运算 74

4.3 数学运算 75

4.4 日期和时间运算 77

4.4.1 返回当前时间和日期 78

4.4.2 获取特定时间和日期 80

4.4.3 改变日历字段 81

4.5 使用集合 82

4.5.1 了解Java集合框架 82

4.5.2 使用HashSet 83

4.5.3 迭代集合 86

4.5.4 使用HashMap 87

4.5.5 使用ArrayList 91

4.6 判断数据类型 94

4.7 测试题 96

第5章 JSP动态网页的请求和响应 99

5.1 了解请求和响应的基本过程 100

5.1.1 请求应t基本过 100

5.1.2 了解URI、URL和URN 102

5.2 HTTP协议基础 103

5.2.1 了解HTTP消息的内容 103

5.2.2 了解HTTP请求的内容 104

5.2.3 了解HTTP响应的内容 105

5.2.4 了解HTTP消息报头的内容 107

5.3 使用JSP处理请求报头 109

5.4 对请求做出响应 111

5.4.1 返回消息正文给客户端 111

5.4.2 返回状态行给客户端 113

5.4.3 返回消息报头给客户端 113

5.4.4 设置响应内容的格式和类型 115

5.4.5 服务端网页缓存的处理 117

5.4.6 客户端网页缓存的处理 120

5.5 测试题 123

第6章 JSP使用表单开发交互式应用程序 125

6.1 创建表单 126

6.1.1 HTML表单基本知识 126

6.1.2 使用样式表控制表单的呈现 130

6.1.3 创建访客留言表单 131

6.2 接收表单数据 134

6.2.1 了解POST方法和GET方法 134

6.2.2 接收表单提交的数据——POST方法和GET方法 135

6.2.3 处理单名多值表单 137

6.2.4 遍历查询变量 138

6.2.5 处理结果不良好的控件 140

6.3 测试题 142

第7章 JSP和数据库集成——使用JDBC访问数据库 143

7.1 了解JDBC 144

7.2 安装和使用数据库 144

7.2.1 安装和使用Access数据库 144

7.2.2 存放和保护Access数据库文件 148

7.2.3 安装和使用SQLServer数据库 148

7.3 理解数据库连接和配置数据源 153

7.3.1 理解数据库连结 153

7.3.2 理解数据库连接驱动 154

7.3.3 通过ODBC连接数据库 154

7.4 基本数据库查询操作 158

7.4.1 查询和显示数据记录 158

7.4.2 遍历列出数据库内容 159

7.5 修改数据 160

7.5.1 插入数据记录 160

7.5.2 更新数据记录 162

7.5.3 删除数据记录 163

7.5.4 插入和显示数据库中的图片(二进制数据) 164

7.6 操作数据库结构 168

7.7 在JSP中应用JDBC的基本步骤 169

7.7.1 创建连接 169

7.7.2 创建Statement对象 172

7.7.3 执行查询 172

7.7.4 处理结果 172

7.7.5 关闭连接 173

7.8 测试题 173

第8章 JSP和数据库集成——数据库设计和SQL语法 175

8.1 数据库设计基本知识 176

8.1.1 关于数据库 176

8.1.2 设计数据库 178

8.2 SQL语法入门 180

8.2.1 语法基础知识 180

8.2.2 定义记录集的列 182

8.2.3 限制记录集中的记录 182

8.2.4 对记录集中的记录进行排序 184

8.2.5 连接表 185

8.2.6 在SQLServer中使用SQL查询分析器 189

8.3 创建和使用SQL存储过程 190

8.3.1 使用向导创建存储过程 191

8.3.2 手动编码创建存储过程 193

8.3.3 调用存储过程 193

8.3.4 为调用存储过程定义参数 194

8.4 SQL注入缺陷和参数化查询 195

8.4.1 堵住非法字符 196

8.4.2 堵住信息泄露 197

8.4.3 使用参数化查询防止恶意SQL注入 198

8.5 测试题 200

第9章 JSP和数据库集成——深入JDBC 201

9.1 了解和使用Statement对象 202

9.1.1 创建和使用Statement对象 202

9.1.2 了解和使用SQL转义 204

9.1.3 预处理语句和参数化查询 206

9.1.4 创建和使用CallableStatement对象 209

9.2 使用ResuItSet对象 210

9.3 深入ResuItSet对象 212

9.3.1 了解并发控制和游标类型 212

9.3.2 检测记录的开始和结束 214

9.3.3 游标的移动 214

9.3.4 检测是否含有记录 215

9.4 使用ResuItSet对象更新数据库 215

9.4.1 更新数据记录 215

9.4.2 插入数据记录 217

9.4.3 删除数据记录 219

9.4.4 检索警告 220

9.5 使用RowSet对象 221

9.5.1 不同类型的RowSet 221

9.5.2 实现RowSet 222

9.5.3 使用CachedRowSet处理结果集 222

9.5.4 理解RowSet 223

9.6 结果集分页 224

9.6.1 结果集分页的方式 224

9.6.2 结果集分页的技术原理 225

9.6.3 结果集分页的范例 225

9.7 使用JDBC和JNDI 229

9.7.1 配置JNDI数据源 230

9.7.2 使用JNDI操控数据库 231

9.8 测试题 233

第10章 Session、Cookies和状态管理 237

10.1 理解Session和Cookie 238

10.1.1 什么是Cookie 238

10.1.2 什么是Session 239

10.1.3 了解Cookie的格式和内容 240

10.1.4 Session和Cookie的使用环境 241

10.2 使用Cookie完成状态管理 242

10.2.1 怎样传送和使用Cookie 242

10.2.2 创建Cookie 244

10.2.3 访问Cookie 245

10.2.4 使用Cookie对象 245

10.2.5 设置Cookie路径 246

10.2.6 检查浏览器是否接受Cookie 247

10.3 使用Session完成状态管理 249

10.3.1 激活JSP网页中的Session 249

10.3.2 怎样传送和使用Session 250

10.3.3 启动和结束Session 255

10.3.4 管理Session 257

10.4 其他维护状态的方法 259

10.5 测试题 260

第11章 JSP内建对象 261

11.1 了解JSP内建对象 262

11.1.1 了解request对象 262

11.1.2 了解response对象 262

11.1.3 了解out对象 262

11.1.4 了解confiig对象 262

11.1.5 了解exception对象 263

11.1.6 了解application对象 263

11.1.7 了解session对象 263

11.1.8 了解page对象 264

11.1.9 了解pageContext对象 264

11.2 使用scope 264

11.2.1 怎样保存变量数据 265

11.2.2 使用pageContext对象保存数据 266

11.2.3 使用session作用范围 267

11.2.4 使用application作用范围 268

11.3 重定向和转发 268

11.3.1 重定向 268

11.3.2 转发请求 269

11.3.3 区分重定向和转发 270

11.4 动态包含文件 271

11.5 测试题 271

第12章 网页的国际化和区域化 273

12.1 了解网页字符编码 274

12.1.1 计算机文字字符编码简介 274

12.1.2 文档字符集和选择字符编码 276

12.1.3 在HTML文档中使用字符引用 277

12.2 字符编码和JSP网页 278

12.2.1 指定网页字符编码 278

12.2.2 字符编码的优先级 279

12.2.3 乱码产生的根源和解决方案 280

12.2.4 为JSp网页设置编码字符集 280

12.2.5 创建多语言网站 281

12.3 区域化设置和JSP网页 282

12.3.1 了解区域化设置 282

12.3.2 区域化设置和字符集的匹配 283

12.3.3 使用response.setLocale和response.getLocale方法设置国际化和区域化设置 285

12.3.4 指定国际化和区域化标示 287

12.4 使用资源包实现国际化和区域化 288

12.4.1 使用ListResourceBundle 288

12.4.2 使用ProperryResourceBundle 289

12.5 测试题 290

第13章 JSP脚本出错、调试与异常情况处理 291

13.1 错误和异常情况 292

13.2 调试JSP网页 293

13.2.1 查看页面出错信息 293

13.2.2 使用出错日志 293

13.2.3 了解JPDA和断点调试 294

13.3 异常情况处理 295

13.3.1 定义出错重定向页面 295

13.3.2 使用try...catch...nally语句和throw语句 296

13.4 测试题 297

第14章 JSP网络应用程序的安全 299

14.1 身份验证和授权 300

14.1.1 使用基本身份验证 300

14.1.2 摘要式身份验证 302

14.1.3 使用基于表单的身份验证和基于角色的授权系统 303

14.2 传输过程中的加密 303

14.2.1 加密的工作原理 303

14.2.2 安全证书的工作原理 305

14.2.3 使用隐私和安全证书 305

14.3 配置IIS连接Tomcat 305

14.3.1 安装和配置TomcatConnectors 305

14.3.2 安装和配置HS 307

14.3.3 创建虚拟目录 307

14.3.4 添加ISAPI筛选器 308

14.4 配置IIS支持SSL 309

14.4.1 创建证书请求文件 309

14.4.2 创建证书 311

14.4.3 为网站安装证书 314

14.4.4 信任自己的CA 317

14.5 使用浏览器证书 319

14.5.1 使用浏览器证书的注意事项 319

14.5.2 请求和安装浏览器证书 319

14.5.3 查看浏览器证书 321

14.5.4 启用浏览器证书 322

14.6 配置Tomcat直接使用加密通信 324

14.7 测试题 326

第15章 JSP网络应用程序基础架构 329

15.1 Java网络相关技术 330

15.1.1 JavaApplet技术 330

15.1.2 JavaServlet技术 330

15.1.3 JavaServerPage技术 330

15.1.4 EnterpriseBean技术 331

15.1.5 JDBCAPI 331

15.1.6 JNDI 331

15.1.7 JTA/JTS 331

15.1.8 JMS 331

15.1.9 JavaMail 332

15.1.10 JAF 332

15.1.11 RMI 332

15.1.1 2JavaIDL/CORBA 332

15.1.1 3其他 332

15.2 JSP网络应用程序的三层架构模型 332

15.2.1 从C/S架构到B/S架构 334

15.2.2 从三层架构到N层架构 336

15.2.3 PHP网页在三层架构中的地位 336

15.2.4 JSP网络应用程序的部署目录 337

15.2.5 创建Web应用程序部署描述符文件 338

15.3 测试题 340

第16章 在JSP内使用类和Java面向对象开发基础 341

16.1 第一个面向对象开发的范例 342

16.2 关于面向对象设计和类 343

16.2.1 面向对象和结构化程序设计的区别 343

16.2.2 什么是面向对象程序设计 343

16.2.3 面向对象程序设计的优点和基本特征 344

16.3 创建和使用类 345

16.3.1 定义方法和属性 346

16.3.2 方法的重载 347

16.3.3 构造方法和析构方法 347

16.3.4 类的继承 348

16.3.5 方法的覆载 349

16.3.6 在类中使用fiinal修饰符 350

16.4 抽象方法、抽象类和接口 351

16.4.1 抽象方法和抽象类 351

16.4.2 接口、继承和实现 352

16.5 访问类的方法和属性 353

16.5.1 导入类和访问成员 353

16.5.2 控制成员访问 354

16.5.3 访问类的属性和方法 355

16.5.4 区别实例成员和类成员(静态成员) 357

16.6 Java类的编译 358

16.6.1 关于编译器和解释器 358

16.6.2 关于类路径 358

16.6.3 在哪里放置Java类 358

16.7 测试题 359

第17章 JSP和JavaServlet的关系与部署 361

17.1 了解JSP的执行过程 362

17.1.1 转换阶段 362

17.1.2 执行阶段 362

17.2 创建和部署第一个Servlet 363

17.2.1 创建、编译和部署Servlet 363

17.2.2 使用Web浏览器调用Servlet 367

17.2.3 在Servlet中使用包 367

17.2.4 将JSP部署为Servlet 369

17.3 Servlet的基本结构和生命周期 369

17.3.1 Servlet的基本结构 369

17.3.2 Servlet的生命周期 371

17.4 JSP网页的生命周期 374

17.5 JSP、Servlet和Web应用程序的部署配置 374

17.5.1 定制URL映射 375

17.5.2 定义初始化参数 377

17.5.3 在服务器启动时加载servlet 379

17.5.4 配置JSP 379

17.6 创建和使用监听器 381

17.6.1 事件类型 381

17.6.2 创建第一个监听器 382

17.6.3 配置事件监听器 383

17.7 配置和创建过滤器 383

17.7.1 创建第一个过滤器 384

17.7.2 过滤器的工作原理 387

17.7.3 配置过滤器 387

17.8 测试题 389

第18章 基于容器的安全和Tomcat领域(Realm) 391

18.1 基于容器的安全——限制对Web资源的访问 392

18.1.1 使用security-constriaint元素保护Web资源 392

18.1.2 使用login-confiig元素访问受保护的Web资源 394

18.1.3 使用security-role元素配置角色 395

18.1.4 一个实际的配置范例 396

18.2 了解Tomcat领域 397

18.2.1 ACL和实现ACL的方式 397

18.2.2 了解Tomcat领域 398

18.3 使用Tomcat标准领域 398

18.3.1 使用JDBCRealm 399

18.3.2 使用DataSourceRealm 400

18.3.3 使用JNDIRealm 401

18.3.4 使用MemoryRealm 403

18.3.5 使用JAASRealm 404

18.3.6 关于密码的加密 404

18.4 测试题 405

第19章 使用JSP操作文件系统 407

19.1 使用java.io.File类 408

19.1.1 遍历磁盘、文件和文件夹 408

19.1.2 获取文件和文件夹的属性信息 411

19.2 创建文件夹和文件 413

19.2.1 创建文件夹 414

19.2.2 创建文件 414

19.2.3 修改文件或者文件夹 416

19.2.4 删除文件或者文件夹 417

19.3 读取文件内容 418

19.3.1 以字符流读取文件 418

19.3.2 以字节流读取文件 420

19.4 向文件中写入内容 422

19.4.1 写入字符内容 422

19.4.2 写入二进制内容和复制文件 423

19.5 测试题 424

第20章 使用JSP结合XML开发 425

20.1 Java和XML 426

20.1.1 XML处理工具 426

20.1.2 了解DOM、SAX、JDOM和JAXP 428

20.2 使用DOM操作XML 429

20.2.1 了解文档对象模型(DOM) 429

20.2.2 使用JSP产生XML 431

20.2.3 JDK中用来操作XML的类 432

20.2.4 将规范的XML文件转换成DOM文档对象 432

20.2.5 将规范的XML字符串转换成DOM文档对象 433

20.2.6 遍历DOM节点树 433

20.2.7 对DOM文档进行修改操作 434

20.2.8 将DOM文档转换成XML文件 435

20.2.9 将DOM文档转换成XML字符串 435

20.3 使用JDOM操作XML 436

20.4 使用SAX处理XML文档 438

20.4.1 什么是SAX 438

20.4.2 SAX的工作原理 438

20.4.3 怎样使用SAX解析 440

20.5 了解XPath 443

20.5.1 部署运行环境 443

20.5.2 XPath表达式语法 443

20.5.3 XPath表达式结果 445

20.5.4 XPath函数 445

20.6 了解XSL和XSLT 446

20.7 从XPath和XSL到XQuery 447

20.8 从XQuery到XUpdate语法 448

20.9 测试题 454

第21章 使用JSP发送和接收电子邮件 455

21.1 安装和配置JavaMaiIAPI 456

21.2 安装和使用SMTP服务 456

21.2.1 安装SMTP服务 457

21.2.2 配置SMTP服务 457

21.2.3 配置Outlook使用本地SMTP服务发送邮件 460

21.2.4 区分POP3和SMTP服务 460

21.3 创建发送邮件的JSP应用程序 461

21.3.1 发送第一封邮件 462

21.3.2 使用远程SMTP服务 463

21.3.3 了解JavaMailAPI成员 465

21.3.4 SMTP服务和JavaMailAPI的工作原理 465

21.4 创建增强的邮件发送程序 466

21.4.1 发送带附件的电子邮件 466

21.4.2 发送多媒体邮件 468

21.4.3 群发邮件 470

21.5 使用POPS方式收信 472

21.6 测试题 474

第22章 JSP事务、JTA和关键应用程序开发 475

22.1 理解事务 476

22.1.1 事务的工作过程 476

22.1.2 事务的共同特点 477

22.2 在JSP应用程序中使用事务 477

22.2.1 在JSP网页中使用组件自身事务处理系统 478

22.2.2 使用数据库系统完成事务 481

22.2.3 使用JSP网页处理分布式事务 483

22.3 测试题 484

第23章 在JSP网页中使用JavaBeans 487

23.1 使用JavaBeans 488

23.1.1 创建第一个JavaBeans 488

23.1.2 在JSP网页中使用JavaBeans(方式一) 489

23.1.3 在JSP网页中使用JavaBeans(方式二) 490

23.1.4 对比JavaBeans使用方式 491

23.2 了解JavaBeans属性的访问方法 491

23.3 使用JSP内建动作标签访问JavaBeans 493

23.3.1 使用<jsp:useBean> 493

23.3.2 使用<jsp:getProper> 496

23.3.3 使用<jsp:setProper> 497

23.3.4 使用JSP+JavaBeans实现用户验证 499

23.4 深入组件模型和JavaBeans 502

23.4.1 组件模型和JavaBeans 503

23.4.2 了解JavaBeans组件模型的实现 503

23.4.3 基于JavaBeans的组件模型能实现什么 503

23.4.4 区分JavaBeans和Java类 504

23.5 测试题 508

第24章 使用统一表达式语言(UnifiiedEL) 511

24.1 表达式和变量 512

24.1.1 EL表达式 512

24.1.2 存取器 514

24.2 标识符和隐含对象 515

24.3 数据类型 515

24.4 运算符 516

24.5 保留的关键字 518

24.6 函数 518

24.7 测试题 519

第25章 使用JSP标准标签库(JSTL) 521

25.1 了解和配置JSTL1.2. 522

25.1.1 配置JSTL 522

25.1.2 创建第一个使用JSTL的范例 522

25.1.3 怎样使用JSTL 523

25.2 使用核/心标签库(core) 524

25.2.1 通用动作标签 524

25.2.2 条件动作标签 527

25.2.3 迭代器动作标签 529

25.2.4 URL相关动作标签 533

25.3 使用118N格式化标签库(fmt) 536

25.3.1 区域化设置标签 536

25.3.2 资源包标签 536

25.3.3 时区标签 539

25.3.4 日期标签 540

25.3.5 数字标签 542

25.3.6 使用<fmt:requestEncoding>解码 543

25.4 使用关系数据库访问标签库(sql) 544

25.4.1 设置数据源 544

25.4.2 数据库查询和更新 545

25.4.3 使用事务 548

25.5 使用XML处理标签库(Xml) 549

25.5.1 核心动作标签 549

25.5.2 转换动作标签 551

25.5.3 流程控制动作标签 553

25.6 使用函数标签库(fn) 554

25.6.1 字符串处理函数 554

25.6.2 获取对象的长度 556

25.7 JSTL的配置 556

25.8 测试题 557

第26章 JSP的XML语法格式和标准动作标签 559

26.1 声明使用XML语法 560

26.1.1 基本语法 560

26.1.2 使用<jsp:root>标识JSP文档 560

26.2 指令和执行块 562

26.3 创建XML文档 563

26.3.1 <jsp:output> 563

26.3.2 <jsp:element> 566

26.3.3 <jsp:attribute> 566

26.3.4 <jsp:body> 567

26.4 其他动作标签 568

26.4.1 <jsp:include> 568

26.4.2 <jsp:forward> 568

26.4.3 <jsp:plugin> 569

26.4.4 <jsp:text> 570

26.5 测试题 570

第27章 创建JSP自定义标签 571

27.1 使用简单tag处理器 572

27.1.1 创建第一个自定义标签 572

27.1.2 简单标签处理器的生命周期 575

27.1.3 了解简单标签处理器实现的类和接口 575

27.1.4 关于JspFragment 576

27.2 使用tag文件创建自定义标签 576

27.2.1 创建第一个tag文件 577

27.2.2 tag文件专用的指令和标准动作标签 579

27.3 创建自定义函数标签 585

27.3.1 创建一个类并定义抽象方法 585

27.3.2 创建标签库描述符文件 586

27.3.3 在JSP文件中使用自定义函数 586

27.4 部署和配置自定义标签 587

27.4.1 部署和配置TLD文件 587

27.4.2 部署和配置tag文件 590

27.4.3 在部署描述符文件中配置标签库 590

27.5 测试题 591

第28章 深入JSP网络应用程序基础架构和MVC架构 593

28.1 深入JSP网络应用程序基础架构 594

28.1.1 基础的设计模式 594

28.1.2 控制器设计模式 594

28.1.3 设计模式中的Model1和Model2. 595

28.2 使用MVC设计模式 597

28.2.1 创建一个基本的MVC程序 597

28.2.2 关于MVC的导航规则 601

28.3 测试题 604

第29章 JSF入门——使用基于MVC架构的实现 605

29.1 了解和配置JSF1.2 606

29.1.1 JSF怎样有优势 606

29.1.2 配置JSF运行环境 606

29.1.3 验证配置 607

29.1.4 怎样使用JSF 608

29.1.5 使用JSF执行用户验证 609

29.2 使用HTML标签库——在JSP网页中使用UI组件 612

29.2.1 使用<h:form>标签 613

29.2.2 输出类标签 613

29.2.3 输入类标签 614

29.2.4 命令类标签 615

29.2.5 选择类的标签 616

29.2.6 表单布局标签 618

29.2.7 数据表格 619

29.2.8 其他标签 620

29.3 使用核心标签库 621

29.3.1 使用Facet 621

29.3.2 标准验证器 622

29.3.3 标准转换器 624

29.3.4 事件监听 626

29.3.5 其他标签 626

29.4 JSF生命周期和MVC 629

29.4.1 JSF标准的请求处理生命周期 630

29.4.2 关于事件的处理 631

29.5 JSF的配置 631

29.5.1 配置文件的基本格式 631

29.5.2 声明JavaBeans托管 631

29.5.3 声明导航规则 632

29.6 测试题 634

附录A JSP内建对象速查卡 635

附录B 常用字符集速查表 643

附录C 测试题答案 645

附录D 参考文献及资料来源 667