14. 实体EJB(上).pdf_第1页
14. 实体EJB(上).pdf_第2页
14. 实体EJB(上).pdf_第3页
14. 实体EJB(上).pdf_第4页
14. 实体EJB(上).pdf_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

实体实体实体实体EJBEJB 主要内容 实体Bean的基本原理 实体Bean的基础知识 实体Bean的生命周期 实体Bean的关系管理 实体Bean的示例程序 1 实体EJB的基本原理 实体Bean是一种持久性的 事务的以及可 以共享的组件 实体EJB是表示持久数据的对象视图 实体Bean中的字段相对应于底层数据库中 的数据 简单的理解 实体Bean表示数据库中某个 表的某条记录 提供了对数据进行操作的方 法 主要是封装了常用的数据库操作 2 实体Bean基础知识 两种类型的实体Bean CMP 容器管理持久性 对数据的操作过 程由容器完成 BMP Bean管理持久性 对数据的操作 代码由Bean作者提供 2 1 实体Bean的组成部分 本地接口主键类 Bean类 远程接口 配置描述器 2 1 1 本地接口 home 针对匿名 实例的方法 finder 相当于对 数据库的查询 Create 相当于数 据库的插入操作 remove 相当于数 据库的删除操作 2 1 2 远程接口 展示Bean类中的业务方法 2 1 3 主键及主键类 实体Bean必须包括一个主键类 主键用于标识一个实体Bean实例 每个实体Bean的引用都与一个特定的主键 相关联 主键类可以是基本类型 也可以是用户定义 的 2 1 4 Bean的方法 ejbCreate方法 执行数据库的插入操作 ejbRemove方法 执行数据库的删除操作 ejbLoad方法 从数据库中加栽数据之后 调用该 方法 ejbStore方法 对数据库的值进行更新之前 调用 该方法 finder方法 对CMP一般不需要 ejbPostCreate方法 通常用于初始化容器管理的 关系 对字段操作的get和set方法 2 1 5 配置描述器 ejb jar xml 定义Bean的相关信息 定义容器管 理的字段 定义关系 定义查询语句 定义容器 管理的事务 weblogic ejb jar xml 定义Bean的JNDI名字 定 义使用的weblogic cmp rdbms xml weblogic cmp rdbms xml CMP配置描述器 包 括必要的数据库信息 用于把抽象的持久数据模 式映射到数据库中的物理数据模式 3 CMP实体Bean的生命 周期 两种存在形式 匿名的实体Bean类似于无状态会话Bean 实例存在 但是不与特定的实体相关联 标识的实体Bean具有与之相关的主键 唯一的标识这个实体Bean 实体Bean可以从一种状态形式转换成另一 种状态形式 3 1 匿名实例 Weblogic EJB容器维护一个匿名实例池 以便能 快速地分派它们执行finder home和业务方法 先调用newInstance 方法创建 然后使用 setEntityContext 方法 通过调用unsetEntityBean 方法 容器可以删除 处于匿名状态的实例 调用ejbPassivate方法可以使实体Bean处于匿名 状态 ejbRemove方法可以使实体Bean处于匿名状态 3 2 标识的实例 调用finder方法 可以使实体Bean转换成标 识状态 调用create方法 可以使实体Bean转换成标 识状态 3 3 对数据库进行操作 ejbLoad 实体Bean使用该方法从数据库 中读取状态信息 ejbStore 实体Bean使用该方法把状态信 息写到数据库中 4 CMP实体Bean示例程 序 每个CMP实体Bean都有一组容器管理的字段 每 个字段对应数据库中的一列 Bean作者需要为每个Bean管理的字段定义get和 set方法 方法是抽象的 由EJB容器来实现 容器管理的每个字段必须在ejb jar xml配置描述器 中进行定义 容器管理的字段与数据库中列的对应关系 需要 在weblogic cmp rdbms xml中定义 CMP实例 StudentBean get方法和set方法 ejb jar xml配置描述器 weblogic ejb jar xml配置描述器 Weblogic cmp rdbms xml配置描述器 包括必要 的数据库信息 用于把抽象的持久数据模式映射 到数据库中的物理数据模式 每个实体Bean都映 射到数据库表中 每个容器管理的字段都映射到 数据表的列上 4 1 Home接口 定义create方法 需要相应的参数进行初始 化 返回值是远程接口的对象 定义find方法 可以定义多个不同的find方 法 需要提供不同的参数 返回值是远程对 象或者远程对象的集合 4 2 远程接口 定义主要的业务逻辑方法 public Short getStuid throws RemoteException public void setLockerid Short lockerid throws RemoteException public Short getLockerid throws RemoteException public void setStuname String stuname throws RemoteException public String getStuname throws RemoteException 4 3 Bean类 参见 StudentBean java 4 4 ejb jar xml 对Bean相关文件的描述 对容器管理的字段的描述 对home接口中定义的find方法的描述 关系的描述 容器管理的事务的描述 4 5 weblogic ejb jar xml 定义ejb的JNDI名字 指定所使用到的 weblogic cmp rdbms jar xml 指定使用哪一个持久类 型持久化实体 和要素必须对应于 4 6 weblogic cmp rdbms xml 定义实体Bean对应的数据源中的表 定义容器管理的Bean的字段与数据库中表 的字段的对应关系 定义关系中所使用的外键 4 7 客户端程序 使用实体bean 5 容器管理的关系简介 实体Bean之间可以是一对一 一对多 多 对多的关系 容器管理的关系可以是单向的也可以是双向 的 容器管理的关系需要在Bean类中提供抽象 的get和set方法 举例 学生类中增加getLocker和setLocker 5 1 Bean类中关系的定义 public abstract Locker getLocker public abstract void setLocker Locker l public abstract Collection getBooks public abstract void setBooks Collection b public abstract Collection getTeachers public abstract void setTeachers Collection t Public void assignBook Book b Public void assignTeacher Teacher t 5 2 CMP配置描述器中关系定义 参考文件ejb jar xml 5 3 实体Bean与数据库之间的映射 指定外键对应关系 在1 1关系中 可以在关系的任何一方存储 外键 在1 N关系中 在N方存储外键 在N N关系中 连接表中包含关系双方的 外部键 1 1关系映射 Student Locker student has locker lockerkey number 1 N关系映射 Student Books student has books studentkey ssn N N关系映射 Student Teacher StudentTeacherJoin students have teachers stud

温馨提示

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

评论

0/150

提交评论