第09章 EJB开发——编写Entity Bean.ppt

  1. 1、本文档共70页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第09章 EJB开发——编写Entity Bean

编写Entity Bean 内容提要 实体Bean和数据库模型 CMP的文件组成 Lomboz创建CMP示例 实体Bean的会话外观模式 一、Entity Bean与数据库模型 Entity Bean是EJB规范中专门用于封装数据库访问的一种组件 Entity Bean可以让开发者以面向对象的方式进行数据库的访问 1、Entity Bean和O-R映射 在企业级应用程序中,数据库的访问是一个经常进行的工作。现在绝大多数数据库都属于关系型数据库,而Java语言以对象为基本编程单位,程序员不得不在类中以面向过程的方式书写很多的SQL语句,而且还要处理资源的释放等问题,步骤非常繁琐,并且容易出错 Entity Bean以面向对象的方式封装对关系型数据库的访问,使得程序员可以完全按照处理Java对象的方式进行数据库的访问。这种将关系型的数据转换为对象型的数据库访问技术被称为O-R Mapping(对象-关系映射) 2、记录和Remote接口对象之间的关系 客户程序在访问Entity Bean组件时,得到的Remote接口或Local接口对象就代表数据库表中的一条记录,通过调用在Remote接口中的商业方法,就可以对Remote接口所代表的当前记录进行相关的操作 3、实体Bean和数据库操作之间的对应关系 向表中插入记录:调用Home接口的create方法,即可向表中插入记录,同时该记录的内容存放在Remote接口对象中 查找表中的记录:调用Home接口的以“find”为前缀的方法,如果找到的记录不止一条,那么这些方法返回和这些记录对应的Remote接口对象的集合;如果是通过主关键字查找记录,那么将直接返回一个代表该记录的远程接口 删除记录:调用Remote接口对象的remove方法 修改记录:调用远程接口中定义的商业方法 4、Entity Bean的种类 实体Bean主要有两种: 容器管理持久化的实体Bean(简称CMP) 所谓持久化是指将Bean类中保存的数据写入数据库的操作。CMP中这种持久化代码由容器在部署时根据部署描述符自动产生,其类代码不特定于某个具体的数据库,目前应用较为广泛。CMP是在EJB1.1规范中引入的,在EJB2.0规范中作了重新设计。 Bean类自身管理持久化的实体Bean(简称BMP) 持久化代码由编程人员自行在Bean类中利用JDBC代码进行编写,适用于需要处理表之间关系比较复杂的数据库操作,且代码灵活性较高。但由于JDBC的代码往往特定于某个数据库,所以BMP的数据库移植性不好。同时由于需要程序员自行编写数据库访问代码,所以所需的代码量往往很多。BMP在EJB1.0规范中就被引入 本课程主要介绍CMP的编写 二、CMP的组成 编写CMP组件所需的Java源文件 和会话Bean类似,编写实体Bean也需要接口文件和类实现文件。远程接口或本地接口文件中负责声明访问Bean类中定义的商业方法,Home或LocalHome接口中声明创建Bean实例的create方法、删除Bean实例的remove方法。对于实体Bean的Home或LocalHome接口,还可以加入一些特殊方法的声明,这些方法主要用于数据库的查找操作 1、Remote接口 和会话Bean的远程接口类似,实体Bean的Remote接口同样继承了javax.ejb.EJBObject接口 实体Bean的Remote接口对象代表数据库表中的一条记录 Remote接口中均含有对其代表记录的某个字段值进行读取或设置的商业方法,这些方法均以set/get为前缀 除去上述的get/set方法之外,实体Bean的Remote接口也可以声明一些其它的商业方法 2、Home接口 实体Bean的Home接口主要的功能是创建或删除实体Bean的远程接口实例、查找给定条件的记录、进行某些不和特定记录相关的一些操作。 在Home中可以声明的方法较多,包括创建实体Bean实例的create方法、查找指定记录的find方法、不以find和create作为前缀的Home方法等 (1)Home接口的create方法 和Session Bean的Home接口中的create方法类似,实体Bean的Home接口中的create用于创建实体Bean的Remote接口的一个对象,对create方法的调用将在数据库表中插入一条相应的记录 EJB2.0规范中容许在“create”名称后面加上后缀,以便用户更为灵活的创建记录 在Home接口的声明中,create方法的返回值类型为Remote接口 create方法在EJB的Bean类中用ejbCreate方法实现,按照EJB2.0标准,ejbCreate方法的返回类型为该实体Bean的主键类 (2)Home接口中的findByPrimaryK

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档