<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    城市獵人

    在一網(wǎng)情深的日子里,誰能說得清是苦是甜,只知道確定了就義無反顧
    posts - 1, comments - 7, trackbacks - 0, articles - 89

    ADF(轉(zhuǎn))

    Posted on 2009-07-31 13:26 sailor 閱讀(153) 評論(0)  編輯  收藏
      ADF(Application Development Framework)是Oracle公司為簡化Java EE程序開發(fā)的復(fù)雜性專門開發(fā)的一種解決方案,ADF通過減少實(shí)現(xiàn)設(shè)計(jì)模式和應(yīng)用程序框架的代碼量,簡化了Java EE的開發(fā)。ORACLE為ADF提供的最新IDE是Jdeveloper 11g,它應(yīng)該是目前對ADF框架支持最好的工具——從設(shè)計(jì)到最終部署整個(gè)過程都提供了非常好的支持。

     

          1   Oracle ADF的架構(gòu)

      Oracle ADF的架構(gòu)是基于MVC設(shè)計(jì)模式的,其架構(gòu)如圖所示。


     下圖說明了ADF各個(gè)模塊在一個(gè)完整的Web Application中的結(jié)構(gòu)關(guān)系。



       1.1  ADF Business Components

        在以數(shù)據(jù)庫為中心的業(yè)務(wù)邏輯中,ADF提供了下面三種關(guān)鍵部件: Entity Object, ViewObject, Application module。這三層建立的順序是這樣的,先建立持久層的實(shí)體對象(Entity Object),然后建立數(shù)據(jù)訪問層的視圖對象(ViewObject),最后建立接口層(Application module)。其中建立持久層的實(shí)體對象主要是和數(shù)據(jù)庫的表或者同義詞對象建立關(guān)聯(lián),數(shù)據(jù)訪問層的視圖對象(ViewObject)是基于實(shí)體層的實(shí)體對象建立的(當(dāng)然也可以只建視圖對象,不過這樣就不是基于實(shí)體對象的,而是基于SQL),主要是進(jìn)行數(shù)據(jù)庫的訪問,而接口層是整個(gè)Business Service 層和Model層的接口,在數(shù)據(jù)訪問層建立的視圖對象需要注冊到接口層中,這樣在Model層中才可以訪問。

     

        1.2 ADF Model層

        ADF model是ADF框架最核心的模塊——它實(shí)現(xiàn)了JSR-227規(guī)范,包括兩部分:Data Control和declarative bindings(聲明式綁定)。

        Data Control 通過使用標(biāo)準(zhǔn)元數(shù)據(jù)描述業(yè)務(wù)層中操作和數(shù)據(jù)集合(包括屬性信息,方法調(diào)用等),從而抽象了業(yè)務(wù)邏輯的實(shí)現(xiàn)。當(dāng)開發(fā)人員創(chuàng)建好接口層(Application module)時(shí),Data Control也就自動(dòng)創(chuàng)建好了,它包含了接口層中所有的功能。也就是說所有訪問業(yè)務(wù)對象的方法現(xiàn)在都通過Data Control來進(jìn)行,這樣使得綁定層使用一種方式來訪問數(shù)據(jù),不論后臺(tái)的數(shù)據(jù)對象是如何獲取得(數(shù)據(jù)庫,webservice, javabean, csv等)。可以把Data Control看做是一種代理機(jī)制,從而隔離了業(yè)務(wù)邏輯層和UI層。 

        Declarative bindings (聲明式綁定)則是抽象了從DataControl中獲取數(shù)據(jù)和調(diào)用的細(xì)節(jié)。其中包括三種基本的聲明式綁定對象類型:Iterator bindings,Value bindings,Action bindings。

        由于 ADF model是ADF框架最核心的模塊,也是最復(fù)雜的地方。而由于DataControl都是自動(dòng)建好的,通常開發(fā)人員不需要去關(guān)心它。所以在這一層最主要的就是理解Declarative bindings, 在開發(fā)過程中通常得在backing Bean中來訪問這些綁定對象來實(shí)現(xiàn)一些特定的功能,在下一篇中會(huì)列出一些在backing Bean中常用的訪問綁定對象的代碼。

     

       1.3 ADF Controller

        Controller層是用來控制頁面流程的。ADF Controller在實(shí)現(xiàn)了JSF標(biāo)準(zhǔn)的基礎(chǔ)上進(jìn)行了擴(kuò)展,提供了更大的頁面流功能。

     

       1.4 ADF Faces Rich Client

       ADF Faces Rich Client (RC)是基于JSF標(biāo)準(zhǔn),內(nèi)建有AJAX功能的組件。據(jù)說ADF Faces  RC提供了超過100個(gè)富客戶端組件,其中包括了內(nèi)置Flash和SVG數(shù)據(jù)可視化組件。通過使用這些組件,用戶帶來極大的視覺沖擊。除了使用ADF Faces  RC,Oracle ADF也對Apache MyFaces Trinidad視圖技術(shù)提供了完全的支持。

     

    2    一些關(guān)于學(xué)習(xí)ORACLE ADF的資料

        1. ADF API和關(guān)于ADF框架的詳細(xì)文檔

        2. jdeveloper 11g相關(guān)

        3. 一些簡單的ADF在線視頻

        4. ADF Faces RC Component最佳實(shí)踐下載

        5. ADF Faces Data Visualization Components Demo

     

         相信學(xué)習(xí)使用過Oracle adf都抱怨過其復(fù)雜性。雖然ADF框架倡導(dǎo)的是快速開發(fā),但這是在開發(fā)人員熟悉該框架的前提下。相比于其它MVC框架,其復(fù)雜性造成的漫長的學(xué)習(xí)周期只能讓其叫好不叫座,以及技術(shù)不開放,只有授權(quán)的用戶可以申請?jiān)创a,相關(guān)的學(xué)習(xí)文檔也比較凌亂(最新的中文文檔基本上沒有),這些都是阻礙這個(gè)優(yōu)秀的框架在國內(nèi)流行的因素。

         原文:http://liuxuan620.javaeye.com/blog/371253


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 国产成人精品免费视频网页大全| 免费无码av片在线观看| 羞羞视频免费观看| 成人在线免费视频| 爽爽爽爽爽爽爽成人免费观看| 黄色片免费在线观看| 天天影视色香欲综合免费| 97人伦色伦成人免费视频| 成人免费无码大片a毛片软件| 哒哒哒免费视频观看在线www| 亚洲精品成人无码中文毛片不卡| 亚洲午夜免费视频| 亚洲人成色77777在线观看| 窝窝影视午夜看片免费| 免费观看久久精彩视频| 久久久久久久91精品免费观看| 免费大黄网站在线观| 亚洲Av无码专区国产乱码DVD| 国产91在线|亚洲| 无遮挡免费一区二区三区| 鲁大师在线影院免费观看| 国产美女精品视频免费观看| 亚洲熟妇av一区二区三区| 亚洲日韩乱码久久久久久| 美女视频黄.免费网址| 全免费a级毛片免费看| 午夜免费福利影院| 亚洲中文字幕不卡无码| 亚洲精品视频在线免费| 美女被免费视频网站| 在线观看免费中文视频| 国产99视频精品免费视频7| 久久久亚洲精品视频| 亚洲国产成人精品无码区花野真一| 香蕉免费一级视频在线观看| 国产精品免费网站| 国产亚洲av片在线观看18女人| 亚洲AV一二三区成人影片| 三级网站免费观看| 国产在线观看免费完整版中文版 | 97视频免费在线|