什么是Oracle ADF?

Paw*_*wan 14 soa oracle-adf

什么是Oracle ADF?

在互联网上,我发现了以下定义:

ADF集成了子帧组合,为对象关系映射和其他形式的服务访问,数据绑定和用户界面提供关键功能,以及将所有功能粘合在一起的功能粘合剂.ADF代表"应用程序开发框架",它由Oracle开发.ADF是一个框架,它可以帮助您轻松构建应用程序,因为我们在开发应用程序时执行的许多冗余操作都由框架负责.

但是我对ADF的理解还有几个问题:

  1. ADF是Java EE Framework 的扩展,可以使用ADF(包括SOA开发)完成的事情可以通过普通的Java EE编程来完成吗?(如果我错了,请纠正我.)

  2. 是否必须学习ADF来执行SOA应用程序?

Cyg*_*sx1 20

它是一个基于JSF的Web开发框架.但更重!!

如果您计划使用此进行Web开发,请注意此框架不是非常灵活.感觉就像在1999年用Visual Studio开发网络软件一样!

您可以在Oracle IDE JDeveloper中构建所有内容(包含UI!)拖放已经创建的UI小部件...如果您可以使用默认的外观并且不想包含流行的JavaScript库(jquery),那么您应该没问题.例如,构建Intranet应用程序可能没问题.但是,如果你想做一个公共Web应用程序(Internet),我不会推荐这个框架!

  • 你好,ADF的受害者:).我们的雇主实际上让我们在ADF上构建了一个巨大的应用程序,但具有自定义外观!我们设法构建和扩展ADF组件以提供自定义外观.但由于可扩展性低和缺乏文档,这是一件很难的事情. (7认同)
  • 呵呵,我实际上并没有参与开发.但我和那些负责决定ADF是否合适的人有关.最后,他们决定将ADF踢出去,并在客户端使用Spring/Spring MVC +可能是AngularJS. (4认同)
  • 不正确 - 您可以在本地或通过共享库添加查询和JS库.使用Skins(自定义CSS),您可以实现对L&F的高度控制.包括发展和网站需求.它是一个*fwk*,专为基于事务数据库数据的应用程序而设计.Oracle正在构建其全新的应用程序系列.嗯.这些关于低可扩展性和定制的评论将向我表明,一个人没有经过适当的培训来使用fwk.fwk在ADF BC(ORM)中具有很高的可扩展性,并且对托管bean,相位覆盖等提供完整的JSF支持.Spring*不是*JEE.Comparison是倾斜的. (4认同)

Joe*_*Joe 12

ADF实际上是4"部分":

ADF Business Components是一种基于元数据的声明式对象关系映射解决方案.它提供了强大的数据库读/写/更新功能,而开发人员不必使用Java(因此是声明性的),尽管框架扫描可以使用Java进行扩展以添加自定义行为.

ADF模型是绑定UI(基于JSF的ADF Faces)的绑定层,无需将UI组件紧密耦合到后端数据模型.

ADFController实现了任务流,这是JSF页面流的一个进步,它允许您将应用程序分解为可重用的页面集,称为任务流,声明式事务管理.

ADF Faces基于JSF,构建在Trinidad之上,Trinidad是一个开源JSF框架.

是的,您可以在自定义Java EE代码中执行ADF提供的几乎所有内容(而不是ADF C).但它是一个框架 - 它处理许多重复的,可预测的冗余代码.此外,人们可以争辩说,一旦学会了,你就可以在ADF中比手工编写Java EE应用程序更高效.


Bhu*_*kar 8

Oracle adf允许您开发主要支持企业需求的mvc应用程序.您必须在此处考虑几件具体事项:

  • 实体对象

这些是数据库交互的核心要素.它们与模型层和业务服务相对应.这里实现了Iebusiness逻辑.

  • 查看对象

这些是被视为显示元素的元素.视图对象可以是可更新的或只读的.

可更新视图对象派生自实体对象,因为视图对象中的任何更改都将反映在实体对象中,然后反映在数据库中.

可以使用标准SQL查询开发只读视图对象.

  • 应用模块

这些是任何adf应用程序的核心部分,因为它们包含需要显示的视图对象.必须将任何需要显示的视图添加到应用程序模块.

它还可以用于测试业务服务,因为在将它们附加到视图部分之前,需要验证业务服务的正确结果.

SOA(面向服务的架构)

这有助于您使用BPEL语言和Java开发Web服务.这些Web服务包含可在adf应用程序中使用的业务流程,该应用程序进一步描述任何企业应用程序

优点:

  • 您可以非常快速地开发企业应用程序,因为数据库表上的所有操作都是在数据模型本身中提供给您的.

  • 丰富的UI组件集,可以以各种方式进行交互.面板分割器,面板标签,装饰盒等

  • Web服务可以轻松地在adf中使用.

  • 它使开发更快.

缺点:

  • 与其他替代品相比更重.

  • 不能使用流行的JavaScript库,如jQuery,Ajax等.

  • 与最新的框架(如Bootstrap,jQuery等)相比,UI组件看起来过于陈旧.


Mer*_*lin 5

ADF只是简化开发.

  1. 是的,您仍然可以使用常规Java EE框架开发所需的内容
  2. 它不是强制性的,但可能会让您的生活更轻松,开发时间也更短

请阅读http://www.oracle.com/technetwork/developer-tools/adf/overview/index.html

还有一个ADF概述视频可以帮助您更好地理解这项技术.