第16章 EJB概述ppt课件_第1页
第16章 EJB概述ppt课件_第2页
第16章 EJB概述ppt课件_第3页
第16章 EJB概述ppt课件_第4页
第16章 EJB概述ppt课件_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第三部分EJB部分 主要内容 EJB概述EJB2 X介绍EJB3概述会话Bean会话Bean实例消息服务及消息驱动BeanEJB环境 第16章EJB概述 主要内容 EJB的目标EJB的特点EJB的角色EJB的类型EJB的编程规约 16 1EJB的目标 构建面向对象的业务应用的标准组件架构 构建分布式的业务应用的标准组件架构 支持WebService的开发 部署和使用 简化应用程序的编写 遵循Java编程语言的 WriteOnce RunAnywhere 特性 解决企业应用生命周期中的开发 部署和运行等各方面问题 不同厂商的开发 部署组件的工具能够在运行的时候相互协作 使用不同厂商的工具开发的组件来构建应用提供EJB和JavaEE组件和非Java编写的应用之间的交互 与已经存在的服务器平台兼容 与其它JavaAPI兼容 与CORBA协议兼容 16 2EJB的特点 包含对企业数据进行操作的业务逻辑 EJB的实例在运行的时候由容器来管理 在部署的时候 通过编辑它的环境入口 可以定制EJB 包含各种服务信息 例如事务和安全属性 可以与EJB的业务逻辑一起以元注释的形式指定 或者单独以XML部署描述符的形式指定 在应用组装和部署的时候可以使用工具来抽取和管理这些服务信息 客户端的访问通过企业Bean所部署的容器中转 如果企业Bean只使用EJB规范定义的服务 企业Bean可以被部署到任何兼容的EJB容器 特定的容器可以提供EJB规范定义之外的服务 不进行源代码的修改和企业Bean的重新编译 一个企业Bean就可以被用在一个集成应用中 Bean提供者定义企业Bean的客户端视图 访问接口 Bean提供者可以手动的定义客户端视图 或者自动由应用开发工具生成 16 3 EJB的角色 企业Bean提供者编写实现EJB业务方法的Java类 定义Bean的业务接口 Bean元数据的声明性定义 应用组装者应用组装者的输入是一个或者多个Bean提供者编写的ejb jar文件 应用组装者的输出是包含EJB以及它们的应用组装指令的一个或者多个ejb jar文件 部署者把EJB部署到特定的运行环境中 运行环境中包含一个特定的EJB服务器和容器 部署者必须解决所有的Bean提供者声明的外部依赖 要遵循应用组装者定义的应用组装指令 部署者的输出是一组EJB 部署过程生成能够使容器在运行时候管理EJB的其它类和接口真正把EJB和其它类以及接口安装到EJB容器中 EJB服务器提供者EJB服务器提供者是在分布式事务管理 分布式对象和其它底层系统级服务领域的专家 一个典型的EJB服务器提供者是一个OS厂商 中间件厂商或者数据库厂商 目前的EJB架构假设EJB服务器提供者和EJB容器提供者是相同的厂商 因此 没有定义EJB服务器提供者的任何接口需求 EJB容器提供者提供部署EJB所需要的部署工具 为部署的EJB提供运行时支持 持久提供者持久性提供者的专长是对象 关系映射 查询处理和缓存 持久性提供者的重点是为持久性管理提供可扩展的 能够支持事务的运行时环境 持久性提供者提供把持久实体映射到关系数据库的对象 关系映射所需要的工具 并为持久实体的管理以及对数据库的映射的管理提供运行时支持 持久性提供者可能和EJB容器提供者是相同的厂商 可能是第三方厂商提供的可插入的持久性环境 系统管理员负责配置和管理企业计算架构和网络架构 包括EJB服务器和容器 负责监视部署好的企业应用在运行时候的状况 16 4EJB的类型 有3种类型的EJB对象会话Bean消息驱动Bean实体Bean 16 4 1会话Bean 特点代表一个单独的客户端执行 每个客户端会对应自己的一个会话对象 可能涉及事务处理 可能会更新数据库中的共享数据 不直接表示数据库中的数据 尽管可以访问和更新这些数据 生命周期相对较短 当EJB容器down掉的时候会话对象就会被删除 分类 有状态会话Bean无状态会话Bean 16 4 2消息驱动对象 它的执行依赖于从客户端接收的消息 一直处于监听状态 当有消息到达的时候会调用消息驱动对象的方法 是异步调用 可能涉及事务处理 可能会更新所使用的数据库中的数据 不直接表示数据库中的数据 尽管可以访问和更新这些数据 生命周期相对较短 是无状态的 对于任何一个消息来说 可以使用任何消息驱动对象来服务 当EJB容器down掉的时候会话对象就会被删除 16 4 3实体Bean 是域模型的部分 提供数据库中数据的视图 可以长期存在 存在时间与数据库中的数据一样长 实体和它的主键不受容器down机的影响 如果在容器down掉的时候事务更新了实体的状态 当实体再次被检索的时候 实体的状态会被恢复到最后提交的事务的状态 16 5编程规约 在编写EJB的时候会有一些约束 包括 EJB不能使用能够进行读 写的静态域 可以使用只读的静态域 因此 建议EJB中的所有静态域声明为final类型的 EJB不能使用线程同步来同步多个实例的执行 EJB不能使用AWT功能来试图向显示器输出信息 或者从键盘输入信息 EJB不能使用java io包来试图访问文件系统中的文件和目录 EJB不能试图监听一个端口 接收对一个端口的连接 或者使用端口进行广播 EJB不能试图查询一个类来获取关于声明的成员的信息 因为Java语言的安全规则 EJB不能访问这些成员的 EJB不能试图使用反射API来访问Java编程语言的安全规则所限制访问的信息 EJB不能试图创建一个类加载器 获取当前的类加载器 设置上下文类加载器 设置安全管理器 创建安全管理器 停止JVM 改变输入 输出和错误流 EJB不能试图设置ServerSocket Socket所使用的端口工厂 或者URL使用的流处理者工厂 EJB不能试图管理线程 企业Bean不能试图开始 停止 挂起或者重新开始一个线程 或者改变一个线程的优先级或者名字 企业Bean不能试图管理线程组 EJB不能试图直接读写文件描述器 EJB不能试图获取特定代码源的安全策略信息 EJB不能试图加载本地库 EJB不能试图得到对包和类的访问入口 这些包和类是Java编程语言的一般规则限制EJB不能访问的 EJB不能试图在一个包中定义一个类 EJB不能试图访问

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论