出版时间:2008-6 出版社:清华大学出版社 作者:黎活明 编 页数:479 字数:693000
Tag标签:无
内容概要
本书是关于EJB 3.0的专业技术教程,从实用的角度出发,理论联系实际,用9章的篇幅详细讲解了EJB 3.0开发的方法和技巧。 本书内容丰富,讲解由浅入深,全面系统,在讲解EJB 3.0最新开发技术的同时,精心设计了与章节内容相关的实例,给出了开发过程中运用到的技巧和注意事项,相信读者一定能从中获益。 本书是EJB开发者的必备参考书,适合于Java程序员、项目经理、系统构架师。
作者简介
黎活明,Java EE高级架构师与咨询顾问,北京传智播客培训中心兼职讲师。有比较丰富的B/S系统开发与网站运营经验,主持或参与“一号通”、“固话彩铃”、“移动办公OA”、“统一信息发送机”、“MSN业务支撑平台”和“国内与国际机票预定系统”等项目,成功运营过中国农业网/
书籍目录
第1章 EJB知识与运行环境配置 1.1 什么是Enterprice JavaBeans(EJB) 1.2 EJB的运行环境 1.3 什么是JNDI 1.4 下载与安装JDK 1.5 下载与安装Eclipse 1.6 下载与安装JBoss 1.7 运行第一个EJB 3.0例子 1.8 熟悉JBoss的目录结构 1.9 在JBoss部署应用 1.10 如何恢复本书配套例子的开发环境 1.11 执行项目中的Ant任务 1.12 运行单元测试用例 第2章 会话Bean(Session Bean) 2.1 Stateless Session Beans(无状态Bean)开发 2.1.1 开发只实现Remote接口的无状态Session Bean 2.1.2 开发只实现Local接口的无状态Session Bean 2.1.3 开发实现了Remote与Local接口的无状态Session Bean 2.2 实例池化(Instance Pooling) 2.3 Stateless Session Bean的生命周期 2.4 Stateful Session Bean(有状态Bean)开发 2.5 激活机制(Activation Mechanism) 2.6 Stateful Session Bean的生命周期 2.7 EJB调用机制 2.8 如何改变Session Bean的JNDI 名称 2.9 Session Bean的生命周期事件 2.10 拦截器(Interceptor) 2.11 依赖注入(Dependency Injection) 2.11.1 资源类型的注入 2.11.2 注入与继承关系 2.11.3 自定义注入注释 2.12 定时服务(Timer Service) 2.13 安全服务(Security Service) 第3章 实体Bean(Entity Bean) 3.1 JBoss数据源的配置 3.1.1 MySQL数据源的配置 3.1.2 MS SQL Server 2000数据源的配置 3.1.3 Oralce 9i数据源的配置 3.2 单表映射的实体Bean 3.3 成员属性映射 3.4 建议重载实体Bean的equals()和hashCode()方法 3.5 映射的表名或列名与数据库保留字同名时的处理 3.6 多表映射的实体Bean 3.7 持久化实体管理器EntityManager 3.7.1 实体的状态 3.7.2 Entity获取find()或getReference() 3.7.3 持久化实体persist() 3.7.4 更新实体 3.7.5 合并merge() 3.7.6 删除remove() 3.7.7 执行JPQL操作createQuery() 3.7.8 执行SQL操作createNativeQuery() 3.7.9 刷新实体refresh() 3.7.10 检测实体是否处于托管状态contains() 3.7.11 分离所有正在托管的实体clear() 3.7.12 刷新flush()与设置flush模式setFlushMode() 3.7.13 获取持久化实现者的引用getDelegate() 3.8 关系/对象映射 3.8.1 双向一对多及多对一映射 3.8.2 单向一对多 3.8.3 单向多对一 3.8.4 双向一对一映射 3.8.5 单向一对一 3.8.6 双向多对多映射 3.8.7 单向多对多 3.9 JPQL查询 3.9.1 命名参数查询 3.9.2 位置参数查询 3.9.3 Date参数 3.9.4 一个JPQL查询例子 3.9.5 命名查询 3.9.6 排序(order by) 3.9.7 查询部分属性 3.9.8 查询中使用构造器(Constructor) 3.9.9 聚合查询(Aggregation) 3.9.10 关联(join) 3.9.11 排除相同的记录DISTINCT 3.9.12 比较Entity 3.9.13 批量更新(Batch Update) 3.9.14 批量删除(Batch Remove) 3.9.15 逻辑非运算符NOT 3.9.16 使用操作符BETWEEN 3.9.17 使用操作符IN 3.9.18 使用操作符LIKE 3.9.19 使用操作符IS NULL 3.9.20 使用操作符IS EMPTY 3.9.21 字符串函数 3.9.22 日期和时间函数 3.9.23 数学函数 3.9.24 Member of 3.9.25 子查询 3.9.26 EXISTS 3.9.27 All、ANY、SOME 3.9.28 结果集分页 3.10 调用存储过程 3.10.1 调用无返回值的存储过程 3.10.2 调用返回单值的存储过程 3.10.3 调用返回表全部列的存储过程 3.10.4 调用返回部分列的存储过程 3.11 复合主键(Composite Primary Key) 3.11.1 复合主键的定义 3.11.2 另一种复合主键的定义方式 3.12 实体继承 3.12.1 每个类分层结构一张表(table per class hierarchy) 3.12.2 每个子类一张表(table per subclass) 3.12.3 每个具体类一张表(table per concrete class) 3.13 Entity的生命周期和状态 3.13.1 生命周期回调事件 3.13.2 在外部类中实现回调 3.13.3 在Entity类中实现回调 第4章 事务管理服务 4.1 容器管理事务(CMT) 4.2 Bean管理事务(BMT) 4.3 事务并发的问题与处理 4.3.1 事务并发的问题 4.3.2 事务并发的处事 4.4 因并发事务引起的更新丢失问题及处理 4.4.1 使用SERIALIZABLE隔离级别避免更新丢失 4.4.2 修改代码逻辑来避免更新丢失 4.4.3 使用悲观锁避免更新丢失 4.4.4 使用乐观锁避免更新丢失 第5章 消息服务(Java Message Service) 5.1 消息驱动Bean(Message Driven Bean) 5.2 Queue消息的发送与接收(PTP消息传递模型) 5.3 Topic消息的发送与接收(Pub/sub消息传递模型) 5.4 消息选择器(Message selector) 第6章 Web服务(Web Service) 6.1 EJB容器模型的Web Service开发 6.2 Web容器模型的Web Service开发 6.3 Web Service的客户端调用 6.3.1 在J2SE或Web中调用Web Service 6.3.2 在EJB中调用Web Service 第7章 在WebLogic中使用EJB 3.0 7.1 WebLogic的安装 7.2 启动WebLogic Examples服务器 7.3 熟悉WebLogic的管理控制台 7.4 关闭WebLogic Examples服务器 7.5 安装与删除企业应用 7.6 安装与删除EJB模块 7.7 安装与删除Web应用 7.8 安装和引用Java EE共享库 7.9 使用Ant发布与卸载应用 7.10 创建JDBC数据源 7.11 WebLogic的JNDI名称 7.12 HelloWorld例子 7.13 Entity Bean应用例子 7.14 Message-Driven Bean应用例子 7.14.1 创建队列 7.14.2 创建主题 7.14.3 队列消息的发送与接收 7.14.4 主题消息的发送与接收 第8章 Struts+EJB 3.0和JSF+EJB 3.0实战 8.1 系统需求 8.2 系统实现 8.2.1 建立实体模型 8.2.2 建立持久化配置文件 8.2.3 建立会话Bean 8.2.4 Struts客户端 8.2.5 JSF客户端 8.2.6 创建EAR部署描述文件 8.2.7 使用Ant构建和部署程序 第9章 项目实用知识 9.1 使用了第三方类库的企业应用 9.2 如何对EJB3进行调试 9.3 单元测试 9.4 在独立的Web服务器或J2SE中调用EJB 9.5 如何获取最新的JBoss版本
章节摘录
第1章 EJB知识与运行环境配置 1.1 什么是Enterprice JavaBeans(EJB) Enterprice JavaBeans(EJB)是一个用于分布式业务应用的标准服务器端组件模型。采用Enterprice JavaBeans架构编写的应用是可伸的、事务性的、多用户安全的。可以一次编写这些应用,然后部署在任何支持Enterprice JavaBeans规范的服务器平台,如JBoss、WebLogic等。 Enterprise JavaBeans(EJB)定义了3种企业Bean,分别是会话Bean(Session Bean)、实体Bean(Entity Bean)和消息驱动Bean(Message Driven Bean)。 会话Bean 会话Bean用于实现业务逻辑,它分为有状态Bean和无状态Bean。每当客户端发出EJB调用请求时,容器就会选择一个Session Bean来为客户端服务。会话Bean可以直接访问数据库,但更多时候,它是通过实体Bean实现数据访问。 实体Bean 顾名思义,实体Bean代表真实物体的数据。在EJB 3.0中,实体Bean仅作为普通Java对象来使用,它负责与数据库表进行对象与关系映射(O/R Mapping)。 消息驱动Bean(MDB) MDB是设计用来专门处理基于消息请求的组件。它能够收发异步JMS消息,并能够轻易地与其他EJB交互,特别适用于当一个业务执行的时间很长,而执行结果无须实时向用户反馈的场合。 1.2 EJB的运行环境 EJB需要运行在EJB容器,每个Java EE应用服务器都含有EJB容器和Web容器,所以既可以运行EJB,也可以运行Web应用。目前支持EJB 3.0的应用服务器有JBoss(4.2.X以上版本)、Glassfish、WebLogic(10以上版本)、Sun Application Server(9.0以上版本)、Oracle Application Server(10g以上版本)和我们国内的Apusic应用服务器。本书将介绍JBoss和WebLogic,前者是使用者最多的开源应用服务器,后者是市场占有率最高的商业应用服务器。
编辑推荐
EJB3.0与环境配置,Session Bean,Entity Bean,事务管理服务、消息服务、Web服务,在WebLogic中使用EIB3.0,Strus+EJB3.0实战、JSF+EJB3.0实战,EJB3.0与Struts、JSF、Spring整合开发,其他项目实用知识。 技术与经验荟萃,成就光荣与梦想! 源自一线的技术与经验结晶,让后来者从容站在前人的肩膀上,站得更高,看得更远……。 本书以最简单通俗的语言,根据作者自己的开发经验,网友的反馈,以及在传智播客培训中心遇到学员的各种问题集结而成,迄今为止,应该说解决了绝大部分EJB 3.0初学者遇到的问题,以期让初学者以最快的速度、最轻松的方式、最透彻的理解快速掌握这项技术,作者已经尽了最大努力,也希望这本书成为EJB 3.0入门类图书的经典之作。 本书的前身是《EJB 3.0实例教程》,该书的部分电子稿在网上广为流传,成为相关开发人员学习EJB 3.0的第一手中文资料,经过和逾万网友的答疑和交流,得以不断补充和完善,应广大网友的热情呼声,本书得以整理出版。 在此特别感谢广大网友、技术同行的热情支持和鼓励,我将一如既往解答、探讨关于本书中技术有关问题。 本书是在国内没有任何可以参考资料的前提下,根据作者自己不断摸索和积累,以及少许外版资料整理而成,仍然有个别地方可能让读者不甚满意,希望能够提出来,待书重印时一并改进。 ——黎活明
图书封面
图书标签Tags
无
评论、评分、阅读与下载