第9章 EJB高级特性(13)
- 格式:pdf
- 大小:1.73 MB
- 文档页数:91


Java的EJB3.0规范
第一章:引言
EJB(Enterprise JavaBeans)是一个用于构建分布式企业级应用程序的Java规范。EJB旨在简化企业应用程序的开发和部署过程,并提供一种标准化的方法来处理事务管理、持久化和安全性等关键功能。本文将重点介绍EJB的最新版本——EJB3.0规范,探讨其特性和用法。
第二章:EJB3.0规范概述
EJB3.0规范于2006年发布,是Java EE 5.0规范的一部分。EJB3.0的目标是简化EJB的编程模型,通过引入注解和依赖注入等新特性来减少开发人员的工作量。相比于之前的版本,EJB3.0提供了更加简洁、轻量级的编程模型,使得开发分布式应用程序更加容易。
第三章:EJB3.0的新特性
3.1 注解驱动开发模式
EJB3.0引入了注解驱动的开发模式,取代了之前版本中的繁琐的XML配置。开发人员可以使用注解来描述EJB的属性、行为和依赖关系,简化了开发过程,并提高了代码的可读性和可维护性。
3.2 依赖注入
依赖注入是EJB3.0中的一个重要特性。通过使用注解,开发人员可以在EJB中声明依赖关系,由容器负责注入相应的资源或其他EJB实例。这样一来,开发人员可以很容易地实现解耦,提高代码的可测试性和可重用性。
3.3 持久化
EJB3.0规范还引入了Java Persistence API(JPA),提供了一种标准化的方法来进行对象持久化。开发人员可以使用注解来描述实体类和持久化对象之间的映射关系,让开发和维护数据库相关的代码变得更加简单和直观。
3.4 拦截器
EJB3.0规范引入了拦截器机制,允许开发人员在EJB的方法调用前后插入逻辑。开发人员可以使用注解来声明拦截器,灵活地处理事务管理、安全性等非业务逻辑的需求。
第四章:EJB3.0的应用场景
4.1 企业级应用程序开发
EJB3.0规范的简化和灵活性使其成为构建复杂企业级应用程序的理想选择。开发人员可以使用EJB3.0来处理事务管理、安全性、持久化等关键功能,从而实现高度可靠和可扩展的应用程序。
Ejb概念
Ejb3.0定义了很多Annotation,覆盖了众多与持久化相关的概念,比如Bean的类型,依赖注入,事务管理,安全,回调,O-R映射,关系等等
Ejb的几个特性
依赖注入(DI)
通过定义@Inject,@EJB,@Resource等annotation,这些依赖关系现在可以由容器来注入到EJB
可选的回调机制
开发者们现在可以仅仅实现他们感兴趣的那些回调方法了,通过定义@PostConstruct、@PreDestroy,@PrePersist或者PostPersist。开发者们可以映射任何JavaBean或者回调类得方法,让他们接收这些文件
简化的持久化模型和改良的查询
可以脱离容器使用
什么情况下需要企业Bean
企业Bean运行在Ejb容器中,企业Bean实际上就是一个封装了业务逻辑的java类
Why Ejb?
最重要的理由:分布式!分布式对象之间互相协作,完成特定的业务功能,分布式对象之间应实现分布透明性(或者位置透明性),即在客户端代码中无需指定分布式对象的位置(通过配置来解决)
应用程序需要支持不同客户端,只需要少量的代码,就可以让远程客户端访问到企业Bean,如果你的应用需要进行分布式部署,如果你的分布式对象需要支持事务,如果你的关键逻辑需要能够支持多种不同类型的客户端,那么Ejb将会是一个很好的选择.当在开发企业Bean之前,首先要做的第一个决定是:Ejb要支持什么样的客户端
远程客户端:客户端和其调用的Ejb对象不在一个JVM进程中
本地客户端:客户端和其调用的Ejb对象在一个JVM进程中WebService客户端
远程方式:客户端与服务器之间通讯时,数据需要序列化之后用传值的方式传输
本地方式:客户端与服务器之间通讯时,数据直接用传址的方式传输 分布式对象之间的事务支持
会话bean(Session Bean)
即从客户端获得Ejb对象开始,然后调用Ejb方法(可以多次),直到客户端生命周期结束,或者客户端释放了Ejb对象为止,成为一次会话,随着会话的终止,Ejb对象也有可能被Ejb容器销毁
使用 EJB 组件你需要了解些什么呢?是一些关于使用条件的判断标准
如果你正在开发一个新的 web 应用,你可能会问企业级 JavaBeans 组件(EJB)适合于做什么。EJB 组件是每个解决方案中必须的一部分吗,还是说缺乏经验的开发小组应该完全避免使用 EJB 组件?在大多数决策中,答案要根据实际情况而定。Kyle 和 Lee 帮助解决了这个问题,他们罗列了一些有助于你决定一个应用是否适合使用 EJB 的判断标准。
在现今的技术条件下,何时以及是否使用 EJB 组件是方案小组面临的一个十分烦人的问题。为帮助你做出正确决定,我们准备了一些问题,以供你在考虑从其它技术转移到 EJB 组件,或者考虑一个可能使用 EJB 组件的新方案时作为判断依据。我们还将比较两个使用了 EJB 组件的方案,并将看到它们是如何被正确或错误地应用于实际的。
什么是 EJB 组件?EJB 组件是为企业级应用设计的 java 组件模型。
EJB 组件是基于标准分布式对象技术、CORBA 和 RMI 的服务器端 java 组件。EJB 组件总是分布式的,这是它们与标准 JavaBeans 组件最根本的区别。
EJB 组件提供了应用的商务逻辑部分。由于它们不涉及表示层的问题,因此必须与其它的显示技术(如
servlets),服务于 HTML 客户端的 JSP 技术,或者使用了诸如 AWT、Swing 技术的 java 应用一起使用。
实现了 EJB 规范的应用服务器提供了可以解决安全性、资源共享、持续运行、并行处理、事务完整性等复杂问题的服务,从而简化了商业应用系统。
Sun 公司制定的 EJB 组件模型要求 EJB 组件运行于 EJB 服务器(通常称为应用服务器)的环境下。我们的示例中使用了高级版 WebSphere 应用服务器,但所讨论的功能适用于大多数 EJB 服务器。
需要考虑的技术问题
当你在决定 EJB 组件是否为适合你的实际情况的合适技术时,不妨先考虑几个问题。如果你对所有这些问题的回答都是肯定的话,那么 EJB 组件就是你可以采用的合适技术。反之的话,别的技术可能更适合。
lujy@
1 SD0711 EJB课堂笔记
EJB_day1 2008-4-28
EJB的预备知识:
RoadMap 路线:
Java 1、C/S架构的程序 swing、+
+
2、Web程序 (MVC架构)
JSP + Servlet +
3、Java EE程序 (多层架构)
Web技术 + EJB + Java EE相关(JNDI、JTA、JWS、JMS)
EJB学习的目标:
1、 掌握EJB的基本的原理,理解其基本概念。 (重点)
企业级程序:HA(高可用性)、安全、可伸缩
2、 编写各种类型的EJB。 (重点)
3、 了解EJB的一些简单的设计、部署知识。(可选)
EJB学习的内容:(11章)
第1章:EJB概述(企业级程序背景知识、EJB概念、原理) day1重点
第2章:First EJB(EJB编程的步骤、EJB3.0编程的模型)
第3章:会话Bean(两种会话Bean的编写)重点
第4章:会话Bean发布为一个Web服务
第5章:实体基础(JPA 全称:Java持久化API) 重点
第6章:消息服务(JMS、MDB)
第7章:给EJB增加功能(Bean的调用、公用的标注、依赖注入、拦截器) 重点、难点
第8章:实体高级部分 重点
第9章:事务 重点
第10章:EJB中的安全
第11章:定时服务(任务管理)
参考书: 《精通EJB3.0》、《Java Enterprise Bean3.0》
Thread
IO
network 主讲老师:程祖红
JDBC
Hibernate
体会思想 JDBC