Application Module,以下简称AM ,AM作为一个管理容器而存在,为相关(这些对象共同完成一个相同的任务)的BC4J对象提供容器服务。AM为事务处理提供上下文环境。AM创建数据库连接。AM间可以进行上下级嵌套(一对多)
总结:可以看出AM偏向于事务控制。
1.可以共享的AM实例
使用JDeveloper的项目属性对话框.可以可视化地配置共享数据缓存(在JDeveloper上选择你的工程,双击就会打开项目属性对话框,选择Business Component-->Application Module instance,即可配置共享AM)。
可以选择在Application之间还是Session间共享AM实例。在Application之间共享意味着允许多个session的请求去共享同一个由AM 池管理生命周期的AM实例。Session间的共享是指一个用户在session内是同一个AM实例。
共享的AM的AppModuleNameShared 配置的下面两个属性将会被设置。
jbo.ampool.isuseexclusive=false
jbo.ampool.maxpoolsize=1
如果手动地改变了这两个值,那么在运行时将不会得到共享的AM实例。
2.AM与数据库连接
对于所有的AM而言,默认允许所有的根AM有它自己的数据库连接。如果你的应用定义了多个可分享的AM,你可以定义一个命名的事务给每个根AM来定制数据库连接。命名的事务是一个任意的字符,被定义为jbo.shared.txn值。在运行时拥有相同jbo.shared.txn值的AM将会共享相同的数据库连接实体缓存。
3.一个简单的测试用例测试AM的方法
public static void main(String[] args) {
String amDef = "com.dana.services.am.common.EMailAM";
String config = "EmailAMLocal";
EMailAMImpl am = (EMailAMImpl)Configuration.createRootApplicationModule(amDef,config);
am.sendEmailByRule();
Configuration.releaseRootApplicationModule(am, true);
}
4.如何在AM中执行SQL语句
public Number getMaxAlarmId() {
java.sql.Statement statement =
this.getTransactionInternal().createStatement(ResultSet.TYPE_FORWARD_ONLY);
String max = "";
try {
statement.execute("select max(alarm_id)as max from mss_raw_alarm");
ResultSet resultSet = statement.getResultSet();
if (resultSet.next()) {
max = resultSet.getString("max");
}
resultSet.close();
statement.close();
} catch (SQLException e) {
e.printStackTrace();
}
if(max!=null&&!"".equals(max))
try {
return new Number(max);
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
5.用AM生成异步的Web Service
默认情况下,AM将创建同步的web service方法,如果需要异步的web service需要在Service Interface 界面选择生成异步web service方法。
参见下图[img]
[/img]
- 大小: 67.4 KB
分享到:
相关推荐
- **接口层 (ADF Application Module):** 连接数据访问层与 Model 层,注册视图对象以便其他层调用。 2. **Model 层:** - **ADF Bindings:** 提供数据绑定机制。 - **ADF Data Control:** 包含已注册的视图...
Application Module是ADF中的核心组件,负责处理业务逻辑和数据操作。通过建立Application Module,可以集成View对象,实现复杂的数据处理流程。 **步骤1:** 新建Application Module,并选择需要操作的View对象。 ...
**ADF**(Application Development Framework)是由Oracle公司推出的一种Java EE应用开发框架,旨在简化企业级应用程序的开发过程。ADF主要面向Java开发人员,特别适用于构建复杂的Web应用。 ##### **1.1 架构** ...
ADF(Application Development Framework)是一种由Oracle提供的用于开发企业级Java应用的框架。它采用MVC(Model-View-Controller)架构模式,帮助开发者构建高效、可扩展的应用程序。 - **Model层**:主要负责...
- **Application Module (AM)**:AM是VO或其他AM的容器,管理事务并提供VO实例。 3. **ADF应用实例**:创建ADF应用的步骤: - 创建一个新的Fusion Web Application (ADF)。 - 设置模型层工程和ViewController...
Oracle Application Development Framework (ADF) 是Oracle公司推出的一种Java EE应用程序开发框架,专为构建企业级Web应用程序而设计。本教程将引导初学者了解ADF的基础知识,包括其架构、主要组件以及如何创建一个...
4. **添加至应用模块**:在创建视图对象的最后一步,需要检查Add to Application Module选项,确保它默认添加到FOD Module应用模块中。这样,创建的视图对象就可以在应用中被其他组件引用,实现数据的共享和重用。 ...
最后,将这两个VO添加到Application Module (AM)中。 在Service的appModel下,选择Data Model,将主表VO拖入,并将明细VO添加到主表的子项。此时,在Data Controls面板中,可以看到添加到AM的VO。 接下来,我们...
- **应用模块(Application Module, AM)**:组织VOs和EOs,并提供业务逻辑。 #### 九、实体对象EO - **EO组成**:EO是由一系列属性组成的Java类,每个属性对应数据库表中的列。 - **运行时BC之间的协作**:EO与VO和...
在Oracle ADF (Application Development Framework) 应用程序中,AM (Application Module) 是一个关键组件,用于处理业务逻辑并提供数据访问功能。为了确保AM能够高效稳定地运行,正确配置AM的相关参数至关重要。...
- **Oracle ADF (Application Development Framework)**:这是一个高级框架,简化了企业级应用的开发过程。它包括 BC4J 加强版,提供了用于构建数据驱动应用程序的工具集。 - **范例需求**:同样需要 Oracle 数据库...
通过JDeveloper的可视化界面,可以方便地创建数据控件,如VO(View Object)和AM(Application Module),然后将它们绑定到UI组件。 6. **ADF任务流(Task Flows)**: 任务流是ADF中的一个强大功能,它允许将相关...
在建立Application Module时,Oracle JDeveloper的Wizard会自动将Entity Objects和View Objects整合进Application Module,如"DeptEmpModule",同时生成对应的CLASS和XML文件。这些模块包含了业务逻辑和数据访问层,...
ADF(Application Dedicated Directory File)是特殊类型的DF,包含了应用相关的所有DF和EF。 - 基本文件包括三种类型: - 二进制EF:具有二进制结构,可以通过相对地址读写数据,数据长度在SELECT响应中指定。 -...
中国金融PSAM(Payment System Application Module)卡作为金融领域的一种重要安全模块,其应用规范旨在确保电子支付过程中的安全性和可靠性。PSAM卡主要用于商户POS、网点终端、直联终端等设备,承担着对设备的安全...
PSAM卡的文件结构包括MF(Master File)区域和ADF(Application Directory File)区域。MF是卡片的根目录,它包含了一系列的DF( Dedicated File,专用文件)和EF( Elementary File,基本文件)。ADF区域则存储了...
PSAM卡的文件结构分为两个主要区域:MF(Master File)和ADF(Application Data File),其中MF用于支付系统环境(PSE)的配置,而ADF则承载特定应用的数据与功能。基本命令如选择文件、读写记录文件、读写二进制...