第1章 介绍 1
1.1 Web编程技术的发展 1
1.2 Web信息系统的形式 3
1.3 Web信息系统的应用 6
1.4 系统开发人才的全面素质 7
1.5 Java Web编程技术的特点 8
1.6 本书纲要和使用方法 9
第2章 J2EE有关基本概念和技术 10
2.1 J2EE多层Web程序框架 10
2.2 构件技术 12
2.2.1 构件种类 12
2.2.2 J2EE的客户 12
2.2.3 Web构件 13
2.2.4 企业JavaBeans(EJB)构件 14
2.3 服务技术 15
2.3.1 命名技术(JNDI) 15
2.3.2 部署技术(deployment) 16
2.3.3 数据连接技术(JDBC) 17
2.3.4 数据事务技术 17
2.3.5 安全技术 17
2.3.6 连接框架技术 17
2.3.7 Web服务技术 18
2.4 通信技术 18
2.4.1 Web协议 18
2.4.5 Java消息技术和邮件技术 19
2.4.4 Java通信服务技术 19
2.4.2 远程方法调用 19
2.4.3 对象管理组协议 19
第3章 客户层技术 21
3.1 基本技术 21
3.2 浏览器 22
3.2.1 功能概述 22
3.2.2 HTML用户信息输入 23
3.2.3 用户数据校验 28
3.2.4 维护用户会话状态 29
3.3 Applet客户 30
3.4 应用程序客户 31
3.5 无线客户 32
3.6 客户程序设计考虑 33
第4章 Web层技术 35
4.1 概述 35
4.1.1 J2EE Web层基本结构 35
4.1.2 Servlet和JSP的优点 37
4.1.3 Servlet和JSP运行环境 38
4.2 Servlet技术 43
4.2.1 简单的Servlet例子 43
4.2.2 Servlet生命周期 46
4.2.3 Servlet编程API 48
4.2.4 处理客户请求 53
4.2.5 控制会话(session) 76
4.2.6 与其他Servlet合作 91
4.2.7 过滤器 103
4.2.8 事件监听器 136
4.2.9 数据库连接 143
4.2.10 Servlet 2.4的新功能 162
4.3 JSP技术 168
4.3.1 JSP基本概念 168
4.3.2 JSP语法 178
4.3.3 动态网页生成 191
4.3.4 开发和使用自制JSP标记 208
4.3.5 JSP和XML 222
4.3.6 JSTL 238
4.3.7 JSP 2.0的新功能 250
4.4 Web安全机制 257
4.4.1 基本Web安全机制概念 258
4.4.2 定义realm 259
4.4.3 Web程序的验证和登录方式 262
4.4.4 使用SSL连接 269
4.5 Web程序部署 272
4.5.1 web.xml文件的格式 272
4.5.2 Web程序编译和打包 277
4.6 Web层设计思路及实例 283
4.6.1 Web程序的设计考虑 283
4.6.2 Web程序实例ICWork 286
5.1.1 EJB定义 328
第5章 EJB层技术 328
5.1 基本概念 328
5.1.2 为什么选择EJB 329
5.1.3 EJB种类 330
5.1.4 EJB的组成 332
5.1.5 EJB的命名规则 335
5.1.6 何时使用EJB 335
5.2 会话bean 336
5.2.1 会话bean的定义 336
5.2.2 会话bean的种类 337
5.2.3 会话bean的生命周期 338
5.2.4 何时使用会话bean 338
5.2.5 会话bean使用方法及实例 339
5.3 实体bean 346
5.3.1 持久性的基本概念 347
5.3.2 实体bean定义 348
5.3.3 实体bean特性 348
5.3.4 实体bean持久性的种类 349
5.3.5 实体bean的生命周期 353
5.3.6 何时使用实体bean 354
5.3.7 一个实体bean例子 354
5.4 EJB 2.0 361
5.4.1 EJB 2.0的特性 361
5.4.2 容器管理的持久性 362
5.4.3 EJB查询语言 371
5.4.4 引入消息驱动bean 373
5.4.5 总结 376
5.5 EJB 2.1新特性简介 377
5.5.1 对于Web服务的支持 377
5.5.2 扩展消息驱动bean 380
5.5.3 EJBQL的提高 382
第6章 事务与安全 384
6.1 事务 384
6.1.1 什么是事务管理 384
6.1.2 事务管理的必要性 385
6.1.3 事务模型 385
6.1.4 事务种类 387
6.1.5 事务特性 395
6.1.6 总结 397
6.2 EJB安全技术 397
6.2.1 为什么需要安全技术 397
6.2.2 安全技术的层次 398
6.2.3 EIS层的安全机制 400
6.2.4 安全身份的建立及传播 402
第7章 J2EE应用程序的打包和部署 404
7.1 打包组件 404
7.2 打包J2EE应用程序 405
7.2.1 EJB模块 406
7.2.2 EJB模块打包准则 407
7.2.5 资源适配器模块 409
7.2.4 应用客户模块 409
7.2.3 Web模块 409
7.3 部署描述文件 410
7.3.1 通用元素 410
7.3.2 EJB元素 416
7.4 使用Ant进行打包部署 417
7.5 总结 419
第8章 J2EE应用程序国际化与本地化 420
8.1 程序国际化需求 420
8.2 J2EE应用程序使用J2SE国际化应用程序接口 423
8.2.1 应用资源 423
8.2.2 消息格式化 425
8.2.3 日期格式化 426
8.3.1 管理局域元素和编码机制 427
8.2.4 文字整理 427
8.3 Web层的国际化 427
8.3.2 显示组件的设计 430
8.3.3 国际化和本地化JSP页面 430
8.4 EIS层的国际化 433
8.4.1 持久性的本地化数据 433
8.4.2 数据库模式的国际化 434
8.5 使用XML相关的国际化方法 436
8.5.1 使用XSLT生成动态的本地化内容 436
8.5.2 应用系统的局部元素通信 436
8.5.3 在不同的应用系统之间进行局部元素的通信 437
8.6.1 客户消息和应用系统的异常 439
8.6 错误信息和日志消息的本地化 439
8.6.2 系统级别的异常和消息记录 441
8.7 总结 441
第9章 J2EE程序体系结构设计 442
9.1 模型-视图-控制体系结构 442
9.2 J2EE设计模式 443
9.2.1 截取过滤器 443
9.2.2 视图帮助 445
9.2.3 前控制器 447
9.2.4 控制器 449
9.2.5 视图 449
9.2.6 值对象或传输对象 452
9.2.7 会话面 456
9.2.8 数据访问对象 459
第10章 J2EE应用程序实例:STARS合作支持系统 465
10.1 STARS系统概述 465
10.2 STARS系统的设计思想 466
10.3 如何决定应用系统的层次 467
10.4 选择本地的或分布式的体系结构 468
10.4.1 本地结构和远程结构的比较 469
10.4.2 J2EE平台的分布式和本地式结构 469
10.4.3 STARS系统结构 470
10.5 体系结构方面的综合考虑 471
10.5.1 视图层 477
10.5.2 模型层 479
10.5.3 控制层 481
10.6 在STARS系统中使用到的设计模式 484
10.6.1 截取过滤器 484
10.5.4 将MVC结构应用于Web应用 484
10.6.2 前控制器 486
10.6.3 传输对象 487
10.6.4 会话面 489
10.6.5 数据访问对象 490
10.6.6 访问控制器 490
10.7 总结 494
附录A HTTP协议 495
A.1 HTTP协议简介 495
A.3 HTTP协议的运作方式 496
A.2 HTTP协议的几个重要概念 496
附录B UML图解概要 502
附录C 主要相关网址 503
附录D Tomcat安装、设置和运行 504
附录E Servlet编程主要API 507
附录F EJB编程主要API 519
附录G TCP Tunnel Tool 527
附录H Ant工具安装使用简述 528
H.1 Ant概况 528
H.2 Ant安装 528
H.3 Ant基本用法 528
参考文献 533