竹直心虛乃吾友,水淡性泊是我師!
          山不厭高,水不厭深
          Google
           
          posts - 3,comments - 1,trackbacks - 0
          對于現有較成熟的Model-View-Control(MVC)框架而言,其解決的主要問題無外乎下面幾部分:
                1. 將Web頁面中的輸入元素封裝為一個(請求)數據對象。
                2. 根據請求的不同,調度相應的邏輯處理單元,并將(請求)數據對象作為參數傳入。
                3. 邏輯處理單元完成運算后,返回一個結果數據對象。
                4. 將結果數據對象中的數據與預先設計的表現層相融合并展現給用戶。
                現在來看看Spring MVC是怎么做的。
                一 總體概述
           
                Spring MVC的核心組件是DispatcherServlet,該類既作為整個MVC框架的前端控制器,同時又負責調動框架中其它組件協同工作完成對一個請求的處理。處理一個請求的大致流程如下:
               1 請求首先由DispatcherServlet截獲,DispatcherServlet把請求交給HandlerMapping,尋找相應的邏輯處理單元。
               2 HandlerMapping根據請求的不同,返回一組邏輯處理單元。在Spring MVC中,邏輯處理單元一般是由0個或多個interceptor和一個controller組成的。
               3 DispatcherServlet首先判斷返回的邏輯處理單元中是否有interceptor,如果有,則首先依次調用interceptor的方法。如果沒有,則執行controller的方法。
               4 DispatcherServlet通過HandlerAdapter來執行controller的方法,返回一個包含了模型和視圖的對象ModelAndView。使用HandlerAdapter的目的是因為Spring MVC并不關心controller實現了什么樣的接口,只要提供相應的HandlerAdapter,Spring MVC就知道該如何執行controller。
               5 如果之前返回的邏輯處理單元包含interceptor,DispatcherServlet又依次(和剛才調用interceptor的順序相反)調用interceptor的方法。
               6 DispatcherServlet把返回的ModelAndView對象交給ViewResolver,通過ViewResolver返回一個合適的View對象。
               7 最后DispatcherServlet調用View對象的render方法把模型中的數據和視圖融合,返回給用戶。
          posted on 2007-07-13 11:27 JAVA虛擬機 閱讀(378) 評論(0)  編輯  收藏

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


          網站導航:
           
          主站蜘蛛池模板: 大名县| 成武县| 大渡口区| 罗定市| 茶陵县| 漳州市| 建宁县| 喀喇| 博野县| 壤塘县| 横山县| 双鸭山市| 类乌齐县| 通城县| 凤山县| 澄城县| 清水县| 阿克苏市| 星座| 石家庄市| 天津市| 密山市| 故城县| 台东市| 江口县| 鄢陵县| 齐齐哈尔市| 沂源县| 德昌县| 厦门市| 河曲县| 江门市| 航空| 嘉鱼县| 贵南县| 巴林左旗| 那曲县| 尖扎县| 辉南县| 额尔古纳市| 图木舒克市|