2012-12-20 23 views
0

我正在学习Oracle ADF框架,并且想要了解DataControl向UIComponent发布什么服务。我知道有一个binding container抽象,它实际上是在页面中呈现的View对象和UIComponent之间进行绑定。在这个框架中抽象的datacontrol扮演什么角色?了解ADF框架中的DataControl抽象

换句话说,在正常的Java EE应用程序中运行在绑定环境中的datacontrolbindings之间的关系和DataControl的等效关系是什么?

回答

3

绑定层将UI层连接到数据控制层。 请注意,UI层可以是JSF页面,Excel电子表格,Swing UI和ADF Mobile页面。 datacontrol层以抽象的方式提供对业务服务的访问,因此UI开发人员无需知道实现了哪种特定的业务服务技术。

要了解更多有关绑定/数据控制层观赏两个部分研讨会在这里: http://www.oracle.com/technetwork/developer-tools/adf/learnmore/adfinsider-093342.html#a2

在Java EE的世界最接近的事情将是CDI - 但ADF结合提供了一个更加完整的解决方案针对各种类型的用户界面,各种类型的后端。

3

数据控件抽象在这个框架中扮演什么角色?

DataControl是一个额外的抽象层来访问业务服务(实际模型层)。

在ADF,业务服务通过一个URL

  • EJB支持不同类型,如基于

    • 应用模块(访问关系数据库)
    • Web服务
    • URL服务来访问数据数据服务通过Java EE EJB访问业务数据

    这些不同的数据接口数据控制层封装了ss类型。数据控制层提供使用Attributes,CollectionsOperations的通用接口以用于绑定层。在绑定层中,查询和更新数据时,访问RDBMS,Web服务或其他内容无关紧要。

    我开始使用ADF时遇到的一件事情是,在使用RDBMS后端实现一个简单的应用程序时,我看不到这个附加层带来的任何实际好处 - 此外,Data Controls立即可用在应用程序模块中定义数据模型之后的JDeveloper面板,甚至没有配置文件。但只有在使用基于Application Module的商业服务时才是如此。在这种情况下,数据控件的所有元数据都从Application Modules数据模型中检索。在使用其他业务服务类型(如Web服务)时,真正的好处就到位了。然后,还会创建额外的元数据.xml文件来配置这些数据控件。

    什么是结合层的作用,它是如何与数据控件层

    的结合层提高了数据的控制,使数据可以在UI中使用交互。典型的绑定是迭代器(=>绑定层),它跟踪集合中的当前记录(=>数据控件)。如果没有iterator,就不会有“当前记录”的概念,并且不可能在记录之间进行导航。

    另一方面是JDeveloper的设计时功能:数据控件提供必要的元数据,以在将数据控件拖放到UI页面时自动创建必要的绑定。

    由@Shay Shmeltzer提到的录音绝对值得一看,因为他们对数据控制和绑定层有很好的洞察力。

  • +0

    datacontrol和绑定层之间的关系是什么?换句话说,您能否扩展您的答案以包含绑定层的角色以及它如何与datacontrol层进行交互? – Geek