2012-12-20 28 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