- 1、本文档共76页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
内 容 概述 构件容器的功能 容器与实现体的合作 会话构件实例的管理 实体构件实例的管理 在网络环境中 一个计算过程(构件)受环境的影响很大 例如: 客户的身份 服务体能提供的访问带宽 客户的请求方式 等 都会对构件的具体服务方式产生影响 例如: 是否为客户提供服务 提供何种精度的服务 使用什么样的交互协议 等 上述影响构件服务效果的各种因素 都被认为是构件的上下文 构件运行环境需要为构件获取这些信息 并帮助构件做出适当的反应 会话构件实例产生于 客户调用home interface的 createMETHOD(…)方法 这引起container调用 newInstance()、 setSessionContext()、 ejbCreateMETHOD(…) 并返回remote引用给客户 实例进入method ready状态 现在实例可以接受客户的business方法 根据在deployment descriptor中的transaction attribute和客户调用的transaction context 业务方法可以在transaction context中或未指定的transaction context中执行 见图中的tx method和non-tx method 非事务方法在method ready状态下执行 事务方法的调用使得实例被包含在一个事务中 此时,容器会调用实例的afterBegin() 实例会与事务结合直到事务结束 客户此时调用的会话构件方法就会代理到构件实例上 如果请求提交事务 事务服务会在提交前将请求告知容器 容器调用beforeCompletion 此时实例就应该将所有缓冲数据 写到数据库 如果请求卷回事务 不用容器调用beforeCompletion就会达到卷回状态 如果事务已经被标记为卷回 容器不能调用beforeCompletion (实例也不会将缓冲写入数据库) 事务完成后 容器调用afterCompletion 指定状态(提交或卷回) 如果是卷回 构件实例需要重置它的话态 回到事务初始的值 容器的缓冲算法可以决定从内存清除哪个构件实例(可能在每个方法后完成,或用LRU策略) 容器调用ejbPassivate 这些完成后,容器将实例的状态保存入辅存中 会话构件只能在事务之间无事务时被冻化 当实例处于冻化状态时,容器可以在部署者指定的timeout时间到达后删除会话对象 则针对该实例的所有对象引用和handle都无效 如果客户调用一个已冻化实例的对象 容器就会激活实例 容器从辅存中恢复实例的状态并调用ejbActivate 会话构件实例重新可以接受客户调用 当客户调用remove时,容器向实例发出ejbRemove() 当容器发现EJB对象的生命时间到达后也可以调用ejbRemove(),而不必客户调用remove 注意: 如果会话构件类实现了SessionSynchronization接口 不管直接或间接 容器必须调用 afterBegin beforeCompletion afterCompletion 方法 如果没有实现SessionSynchronization就不必调用这些方法 无态会话构件实例开始于容器调用 newInstance(); setSessionContext()和 ejbCreate() 容器可以在任何时间创建实例 与客户调用create()方法没有任何关系 无态会话构件实例 此时 可以代理客户的业务方法调用 当容器不再需要实例时(通常容器想减少method-ready缓冲池中实例数的时候) 容器调用ejbRemove() home接口中若干方法的实现 create methods finder methods Remove methods home methods ejbCreateMETHOD ejbPostCreateMETHOD ejbFindMETHOD ejbRemove ejbHome METHOD ejbCreateMETHOD 当客户利用构件的home interface中的 createMETHOD创建构件实例时 容器调用构件实例的ejbCreateMETHOD方法 校验客户提供的参数 向数据库插入表示实体对象的一条记录 (例如:发出一
您可能关注的文档
- 高二物理选修3-11.1电荷及其守恒定律.ppt
- 高二物理选修3-1电场复习.ppt
- 高二物理选修3-1第二章.ppt
- 高二物理选修3-1第二章第五节.ppt
- 高二物理选修3-4 12.3 波长_频率和波速 LI.ppt
- 高二物理选修3-4_11.4_单摆(实验).ppt
- 高二物理静电场复习课件.ppt
- 高二物理:第1节动量和冲量.ppt
- 高二生物植物的矿质营养2.ppt
- 高二生物细胞的化学成分3.ppt
- 职业技术学院2024级工业机器人技术(安装与维护)专业人才培养方案.docx
- 职业技术学院2024级应用化工技术专业人才培养方案.pdf
- 职业技术学院2024级软件技术(前端开发)专业人才培养方案.pdf
- 职业技术学院2024软件技术专业人才培养方案.docx
- 职业技术学院2024级信息安全技术应用(安全运维)专业人才培养方案.docx
- 职业技术学院2024级新能源汽车检测与维修技术(车辆鉴定与评估)专业人才培养方案.pdf
- 职业技术学院2024级石油炼制技术专业人才培养方案.pdf
- 职业技术学院2024级环境监测技术专业人才培养方案.docx
- 职业技术学院2024级汽车制造与试验技术专业人才培养方案.pdf
- 职业技术学院2024级信息安全技术应用专业人才培养方案.pdf
文档评论(0)