- 1、本文档共36页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
OAF教程5-BC4J.
教程:管理持久性数据 (BC4J)
此教程说明了 OTN 开发人员如何使用 Oracle9i JDeveloper 和 Oracle Business Components for Java (BC4J) 框架为虚拟购物中心示例应用程序管理持久性数据。
目录
概念
设计
所需软件
安装
实施
资源
反馈
Concepts
BC4J-VSM 是一个在数据库中存储持久性数据的多层应用程序。下图给出了该体系结构的一个高级视图。
BC4J 框架提供了两个运行于数据库的重要对象:实体对象和视图对象。
实体对象为数据库表(或视图、同义词、或快照)存储商务逻辑和列信息。实体对象回答了什么对象与商务相关?的问题.在问题域中它们是名词。您能够从现有的数据库表来创建实体对象(反向生成),或者定义实体对象,并使用它们来创建数据库表(正向生成)。
视图对象使用 SQL 查询来指定过滤的商务数据子集,这些数据能够与实体对象的属性相关。视图对象回答了什么数据与任务相关?的问题。您可以查询一组数据,并完全按您希望的方式显示出来。视图对象定义视图行类的属性,视图行类代表查询结果中的一行,而且也可以指底层的实体对象。
视图对象为客户提供了行的集合,他们可以对它进行滚动和更新,而不需要考虑或了解底层实体对象。客户可以通过导航结果集来操纵数据、获取和设置属性值;当提交事务时,将会对底层数据库中的数据做出相应更改。视图对象之间的关系用视图链接来表示。每个视图对象都提供了一个默认的迭代器,您可以用它来导航该对象的结果集。例如,下图展示了视图对象、实体对象和底层数据库表之间的关系。名为 EmpNames 的视图对象对 Emp 实体对象操作,提供 EMP 表中 EMPNO 和 ENAME 列的视图。
通过消除与常见的应用程序探测设备相关的大量编码和测试工作,BC4J 使应用程序开发人员可以将全部时间集中在实施商务解决方案上。使用这个框架的好处包括减少开发成本、降低工程风险以及缩短上市时间。
关于事务
事务是管理数据库操作的接口。事务中所有修改数据的操作必须在服务器接受这些修改之前成功完成。这些操作包括设置属性值,标准 SQL 调用(如 INSERT、UPDATE 和 DELETE),或者更专门的类似于 RPC 的调用(如调用 Java 存储过程或 PL/SQL 程序包)等方法。事务是不可分割的单元;事务中的操作结果可以被全部提交(保存到数据库)或者被全部回滚(撤销)。
例如,当客户在使用银行服务从一个存款帐户转帐至一个支票帐户时,此事务由三个单独的操作组成:减去存款帐户中的金额、增加支票帐户中的金额,以及在一个事务日志中记录该事务。如果全部执行了这三个操作来保持帐户正确的收支平衡,则该事务被提交,操作结果被施加给数据库。但是,如果某些情况(如资金不足、帐号无效或硬件故障)使得这些操作中的任何一个不能成功完成,则必须回滚整个事务,使所有帐户的收支平衡保持正确。
事务也为大量的共享数据提供了多用户一致性。当客户修改数据时,锁确保了其他客户在第一个客户完成操作之前不能进行其他的修改。当事务被提交或回滚时,锁被释放。这是一种悲观的锁定模式,Java 商务组件框架默认采用这种模式。
应用程序模块提供了默认的事务和并发支持。无需编写代码,除非您想自定义默认行为。
设计
取决于您希望的工作方式,您可以自动地从现有的数据库表创建实体对象(反向生成),或者定义实体对象,然后使用它们来自动地创建数据库表(正向生成)。
使用反向生成时,首先定义数据库表(也可能是视图、同义词和快照),然后通过以下工具中的一个或多个来使用它们,以创建实体对象和关联:Entity Object Wizard 或 Editor Business Components Project Wizard Package Wizard 或 Editor。开发小组通常从数据库设计或 UML 图开始,数据库管理员为图中的每个实体创建一个表。该表具有对应于实体属性的列,以及基于实体间关系的数据库约束条件。通过商务组件向导使用这些表来创建实体对象和关联的初始化定义。之后,程序员自定义这些商务组件来实施应用程序的商务逻辑。
在使用正向生成时,根据商务组件的定义自动创建数据库表和数据库约束条件。然后,数据库管理员可以根据需要重新定义生成的表和数据库约束条件。
OTN 开发人员在 BC4J-VSM 中使用反向设计,因为应用程序基于先前在 VSM 的 J2EE 版中使用的数据库模式。因此,从表来开发实体要比从头开始构建它们更容易。
不过,如果您在构建一个全新的应用程序,正向生成可以为您提供比根据数据定义行为对实体行为进行更好的控制。
BC4J-VSM 设计的其他方面包含在此教程系列的各种课程中。
实施
文档评论(0)