gpt4 book ai didi

java - 获取在线 Web 服务应用程序的应用程序模块的最佳实践

转载 作者:行者123 更新时间:2023-12-02 05:53:03 26 4
gpt4 key购买 nike

我正在使用 Jdeveloper 11.1.1.7.0 构建应用程序。 该应用程序将由 调度程序 根据应用程序中指定的时间间隔运行。该应用程序的主要目的是使用在线网络服务进行在线交易。

在应用程序中,我从数据库获取数据。为了做到这一点,我必须定义应用程序模块并使用它来获取 View 对象。以前,当应用程序处于 10g 中(迁移到 11g 之前)时,开发人员使用以下方式创建应用程序模块:

ApplicationModule appMod= Configuration.createRootApplicationModule("somePackge","someAppNameLocal"); 

最后他发布如下:

Configuration.releaseRootApplicationModule(appMod, false);  

问题是: 获取应用程序模块的最佳实践是什么?

此博客:Oracle Apps (ADF/OAF/iModules): Different ways of getting Handle to AM from Backing Bean建议采用不同的方法来做到这一点。 但是,哪一个最适合我正在构建的应用程序类型?另外,我是否需要一些如何在应用程序结束时释放应用程序模块的信息?有必要吗?

最佳答案

您现在遵循的方法是最好的方法。我在我的应用程序中使用了相同的方法,并且在生产中运行良好。我的用例和你的一样。

但是您需要使用

释放您的根应用程序模块
Configuration.releaseRootApplicationModule(appMod, true);

不是

Configuration.releaseRootApplicationModule(appMod, false);

原因:http://www.jobinesh.com/2011/12/some-tips-on-application-module-usage.html

我需要一些如何在应用程序结束时释放应用程序模块的信息吗?有必要吗?

这是必要的。

调用 createRootApplicationModule() 将使用连接池中的连接,如果您没有正确释放它,您的应用程序可能会由于连接不可用而在某个时间点崩溃。

我建议关注这篇文章:http://andrejusb.blogspot.in/2013/03/optimizing-long-running-adf-operations.html并为您的调度程序创建一个 AM。

关于java - 获取在线 Web 服务应用程序的应用程序模块的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23365231/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com