本书介绍了用J2EE(Java 2平台企业版)设计企业级应用程序的标准方法。它是由Sun公司J2EE项目组的核心成员集体撰写的,其权威性毋庸置疑。
本书讨论了基于Java servlet和JSP的Web客户、使用EJB技术的中间层解决方案,以及基于JDBC的后端连接。通过对客户层、Web层、EJB层、企业信息系统层的讨论,指导读者在多层企业级应用程序的各层之间分配功能。并区还讨论了设计Web应用程序时遇到的安全、部署、事务管理等关键问题,同时给出了一个生动的电子商务应用程序的例子。
本书适合IT管理者、系统工程师、使用J2EE平台的企业级应用程序开发者以及J2EE产品供应商阅读使用。
第1章 概论
1.l 企业级应用程序开发的挑战
1.2 用于企业解决方案的平台
1.3 J2EE应用程序方案
1.4 总结
第2章 J2EE平台技术
2.1 组件技术
2.2 平台的角色
2.3 平台的服务
2.4 服务技术
2.5 通信技术
2.6 总结
第3章 客户层
3.l 需求和限制
3.2 客户选择简述
3.3 Web客户
3.4 EJB客户
3.5 企业信息系统客户
3.6 面向多种类型客户的设计
3.7 总结
第4章 Web层
4.1 Web应用程序和Web容器
4.2 动态内容的创建
4.3 servlet和JSP页面
4.4 JSP页面的设计
4.5 国际化和本地化
4.6 应用程序设计
4.7 应用程序的移植
4.8 总结
第5章 EJB层
5.l 商务逻辑
5.2 作为J2EE商务对象的企业bean
5.3 实体bean
5.4 会话 bean
5.5 设计的指导方针
5.6 总结
第6章 企业信息系统层
6.l 企业信息系统的性能及局限性
6.2 企业信息系统集成方案
6.3 关系数据库管理系统访问
6.4 其他企业信息系统访问
6.5 应用程序组件提供者的任务
6.6 应用程序编程模型
6.7 编程访问数据及函数
6.8 连接
6.9 安全
6.10 J2EE连接器体系结构
6.11 总结
第7章 包装与部署
7.1 角色与任务
7.2 包装J2EE应用程序
7.3 部署描述符
7.4 部署工具
7.5 总结
第8章 事务管理
8.l 事务特性
8.2 J2EE平台事务
8.3 方案
8.4 JTA事务
8.5 applet和应用程序客户端中的事务
8.6 Web组件中的事务
8.7 企业bean中的事务
8.8 企业信息系统中的事务处理
8.9 总结
第9章 安全
9.l 安全威胁及机制
9.2 鉴别
9.3 授权
9.4 消息保护
9.5 审核
9.6 总结
第10章 示例应用程序
10.1 应用程序的功能
10.2 应用程序的体系结构
10.3 视图
10.4 模型
10.5 实现
10.6 控制器
10.7 MVC总结
10.8 无状态服务
10.9 部署
10.10 事务
10.11 安全
10.12 总结
词汇表
后序
本书介绍了一种用J2EE来设计多层企业级应用程序的标准方法.本书的目的不在于介绍如何用具体的J2EE技术开发应用程序, 而是着眼于指导读者如何在层之间分配应用程序功能, 以及如何在每一层的设计选项之间做出选择.
本书介绍了建立J2EE应用程序所使用的技术和原则, 以及应用程序所采用的特定方法.处理好特性与通用原则之间的关系从来就不是一件容易的事情, 我们希望所给出的原则既与书中的示例应用程序一致, 又是对示例应用程序有益的补充.
本书非常适用于IT管理者.系统工程师.考虑向J2EE平台移植或使用J2EE平台的企业级应用程序开发者及提供J2EE产品的供应商.
本书的结构
本书包含以下章节:
第1章, “概论”, 讨论了在企业级应用程序设计中的难题以及J2EE平台如何解决这些问题.同时也介绍了J2EE平台所支持的一些应用程序.
第2章, “J2EE平台技术”, 概述了J2EE平台所支持的组件.服务和通信技术.
第3章, “客户层”, 给出了J2EE客户实现选项, 并指导如何在这些选项中做出选择.
第4章, “ Web层”, 介绍了可用于Web层开发的技术.还包括使用J2EE Web组件的指导和技巧, 介绍了几个Web应用程序结构.
第5章, “ EJB层”, 讨论了 J2EE平台的EJB层的功能以及实现商务逻辑的设计选择.
第6章, “企业信息系统层”, 介绍了访问企业信息系统的推荐方法, 及如何配置J2EE组件来进行访问.
第7章, “包装与部署”, 介绍了J2EE平台所提供的对J2EE应用程序进行包装和部署的功能, 并给出一些使用这些功能的启示和经验, 也给部署工具的提供者提出了一些建议.
第8章, “事务管理”, 介绍了J2EE平台所提供的事务服务, 并给出一些如何更好地使用这些服务的建议.
第9章, “安全”, 介绍了J2EE安全模型到企业计算环境和基础结构的映射.
第10章, “示例应用程序”, 给出一个示例阐明J2EE编程模型, 深入地描述了多层J2EE应用程序.
“词汇表”, 列出了本书中用到的一些词和短语及它们的定义.
如何获取示例应用程序
可以从以下网址下载本书中的示例应用程序:
http://java.sun.com/j2ee/download.html
此示例应用程序需要在J2EE V1.2兼容平台上运行.从本示例应用程序的下载网页也可以下载到 sun公司的 J2EE SDK, 它是 J2EE v1.2平台的免费实现.
相关信息
与J2EE相关的一些文档可以在这个网址获得:
http://java.sun.com/j2ee/docs.html
有关如何使用 J2EE SDK构建多层企业级应用程序, 参看 《J2EE Developer’s Guide》, 可在以下网址获得:
http://java.sun.com/j2ee/j2sdkee/techdocs/index.html
本书提到的一些J2EE技术在它们的规范中有介绍:
JavaTM 2平台企业版规范, 1.2版(J2EE规范), @1999, Sun公司.可在http://java.sun.com/j2ee/download.html下载.
JavaW 2平台标准版, l.2.2版(J2SE规范), @1993-1999, Sun公司.可在http://java.sun.com/products/jdk/l.2/docs/api/index.html下载.
JavaTM Servlet规范, 22版(Servlet规范), @1998.1999, Sun公司.可在http://java.sun.com/products/servlet下载.
Javaserver PagesTM规范, l.l版(JSP规范), @1998. 1999, Sun公司.可在http://java.sun, com/products/jsp下载.
Enterprise JavaBeans”规范, 1.l版(EJB规范), @1998. 1999, Sun公司.可在http://java.sun.com/products/ejb下载.
JDBCTM 2.0 API(JDBC规范), @1998.1999, Sun公司.可在http://java.sun.com/products/jdbc下载.
JDBC TM 20标准扩展API(JDBC扩展规范), 1998. 1999, Sun公司.可在http://java.sun.com/products/jdbc下载.
Java TM事务API, 1.0.1版(JTA规范), @1998.1999, Sun公司.可在http://java.sun.com/products/jta下载.
JavaTM事务服务, 0.95版(JTS规范), @1997-1999, Sun公司.可在http://java.sun.com/products/jts下载.
Java命名和目录接口, 1.2版(JNDI规范), @1998.1999, Sun公司.可在http://java.sun.com/products/jndi下载.
Java IDL, @1993-1999, Sun公司.可在http://java.sun.com/products/jdk/l.2/docs/guide/idl/index.html下载.
RMI over IIOP1.0.l, 可在 http://java.sun.com/products/rmi-iiop下载.
JavaTM消息服务, l.0.2版, (JMS规范), @1998, Sun公司.可在http://java.sun.com/ products/jms下载.
JavaMailTM API设计规范, 1.1版(JavaMail规范), @1998, Sun公司.可在http://java.sun.com/products/javamail下载.
JavaBeansTM活动构架规范, 1.0.1版(JAF规范), @1998, Sun公司.可在http://java.sun.com/beans/glasgow/jaf.html下载.
致谢
本书是许多人努力的结果.
每个企业小组成员主要负责某一章节, 并对其他章节做出了很大贡献.另外, Danny Coward负责章节分配草案.
J2EE规范的作者以及参考实现开发者也在许多方面对J2EE编程模型的开发提供了有用的帮助.
我们也感谢Rick Catted. Bill Shannon.Mark Hapner.John Crupl. Sean Brydon以及看过我们的手稿并提出建议的人们.
感谢Jim Inscore和Stephanie Bodoff的编辑.