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

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

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

    閑人野居
    好好學習,天天向上
    posts - 57,  comments - 137,  trackbacks - 0
        經過一段時間的學習,對jsf的認識也逐漸清晰。總結了一下jsf和structs的區別,首先在于分離了請求的處理。使用事件處理機制來代替原有的request分發。其次在頁面的展示上,采用組件的概念,而不是到處散落的html標記。再有,jsf對于請求的生命周期重新進行了劃分,對于每個階段都可以派遣事件,這使得整個請求的處理比較的清晰。最后,jsf對于頁面的流轉使用Navigation系統來處理,這一點感覺和structs還是比較類似的,只是換了一個概念。
        從jsf的規范來看,jsf整個架構還是比較清晰,各個層次分的也挺明顯。從總體上看,規范主要劃分了application,context,lifecycle,render,component,validator,event,el幾個部分,當然少不了主要的入口Servlet。有一點不太明白,大多數的類都是抽象類而不是接口,可能是為了規定層次吧,不允許多層次繼承。下面簡單以下介紹各個包的功能:
       application:從定義上就可以看出來,這是應用級的。中間包括了Application主類,這是主要的程序入口,規范中最具有重量級的類,也是用來連接各個模塊的。jsf規范使用工廠的模式,來創建相應的實現類.當然如果需要Application的實現,需要從ApplicationFactory中取得。除了Application類,其中還包括了ViewHandler,這個主要負責View的Renderer調配工作。而許多jsf實現框架,如果想定義自己的行為,一般上都會使用自身的ViewHandler,如facelets。NavigationHandler的工作,不用說已經很明顯,就是用來負責頁面之間的導航。包中,還包括了view狀態管理類--StateManager,主要用于恢復view,以及保存view。目前一般使用Session來保存相應的view,當然也可以使用客戶端來保存。其實,對于view狀態的保存,非議還是挺多的,而且問題也比較多。
      context:包括了主要的上下文環境類,如FacesContext和ExternalContext,前者是jsf的主要Context類,包括對message的管理,Application的取得,以及ResponseWrite的引用。后者主要類似于作為外部環境的引用類,如ServletContext和PortletContext.ResponseWriter,主要的服務端Writer,用于輸出相應的html,xml內容,所有的Renderer都需要引用此類
      lifecycle:這是jsf最大的特色,劃分了請求的相應的處理階段。規范中,只有兩個類Lifecycle和LifecycleFactory。Lifecycle管理整個jsf請求的生命周期。通過指定的順序執行相應的階段。
      webapp:定義了主要的Servlet,FacesServlet,主要的請求分發類,用于轉換相應得faces為實際的資源。在規范中,Servlet并不是主要的初始化類,jsf 的初始化工作主要由具體的實現完成。在RI實現中,基本上由ConfigureListener完成初始化工作。而Servlet的任務只是簡單的傳遞請求參數而已,以及調用相應的Lifecycle而已。
      這里主要講了jsf 的整體架構包,下一篇主要分析一下jsf相關組件的包。

     
     



    posted on 2007-04-21 20:06 布衣郎 閱讀(1872) 評論(1)  編輯  收藏 所屬分類: web view技術

    FeedBack:
    # re: 了解jsf的架構 一
    2007-05-17 16:47 | 熊未來
    謝謝. weilai2@163.com  回復  更多評論
      

    <2007年4月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    293012345

    常用鏈接

    留言簿(12)

    隨筆分類(59)

    隨筆檔案(57)

    blog

    java

    uml

    搜索

    •  

    積分與排名

    • 積分 - 357878
    • 排名 - 156

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲天堂男人天堂| 亚洲精品久久久久无码AV片软件| 国产成人亚洲精品狼色在线| 亚洲av激情无码专区在线播放| 亚洲中文字幕无码av在线| 日本视频免费观看| 在免费jizzjizz在线播| 日韩一级在线播放免费观看| 国产日韩亚洲大尺度高清| 亚洲欧美日韩中文字幕一区二区三区| 亚欧国产一级在线免费| 大学生高清一级毛片免费| 久久精品7亚洲午夜a| 国产成人不卡亚洲精品91| 日韩免费高清大片在线| 亚洲国产小视频精品久久久三级| 亚洲福利一区二区精品秒拍| 9i9精品国产免费久久| 免费激情视频网站| 亚洲精品美女视频| 成年黄网站色大免费全看| 亚洲av综合avav中文| 亚洲免费在线播放| 在线a亚洲v天堂网2019无码| 国产成人AV免费观看| 免费中文字幕在线| 亚洲欧美成aⅴ人在线观看| 国产乱子伦精品免费女| 亚洲人成人网站18禁| 伊在人亚洲香蕉精品区麻豆| 国产精品久久久久久亚洲影视| 无码专区永久免费AV网站| 亚洲国产另类久久久精品黑人| 亚洲视频免费一区| 国产亚洲一卡2卡3卡4卡新区 | 亚洲午夜电影在线观看高清| 国产成人AV免费观看| 日本亚洲色大成网站www久久| 精品成在人线AV无码免费看| 亚洲尹人九九大色香蕉网站| 蜜桃视频在线观看免费视频网站WWW|