歡迎您訪問鄭州興邦電子股份有限公司官方網站!
    阿里巴巴誠信通企業
    全國咨詢熱線:40000-63966
    興邦電子,中國水控機第一品牌

    聯系興邦電子

    全國咨詢熱線:40000-63966

    售后:0371-55132951/55132952

    工廠:河南省 鄭州市 高新區蓮花街電子電器產業園

    關于BS MVC常用框架介紹

    文章出處:http://www.xujuanpiju.com 作者:興邦開發部 人氣: 發表時間:2015年12月28日

    [文章內容簡介]:目前常用的MVC框架,除了常用的ssh之外,還有一些非常流行的MVC框架,這些框架都提供了較好的層次分隔能力。在實現良好的MVC 分隔的基礎上,還提供一些輔助類庫,幫助應用的開發。下面介紹一下目前常見的MVC框架。

    關于BS MVC常用框架介紹

    1JSF

    準確地說,JSF是一個標準,而不是一個產品。目前,JSF已經有兩個實現產品可供選擇,包含Sun的參考實現和ApacheMyFaces。大部分的時候,我們所說的JSF都是指Sun的參考實現。目前,JSF是作為JEE 5.0的一個組成部分,與JEE 5.0一起發布。

    JSF的行為方法在POJO中實現,JSFManaged Bean無需繼承任何特別的類。因此,無需在表單和模型對象之間實現多余的控制器層。JSF中沒有控制器對象,控制器行為通過模型對象實現。

    當然,JSF也允許生成獨立的控制器對象。在Struts 1中,Form Bean包含數據,Action Bean包含業務邏輯,二者無法融合在一起。在JSF中,既可以將二者分開,也可以合并在一個對象中,提供更多靈活的選擇。

    JSF的事件框架可以細化到表單中每個字段。JSF依然是基于JSP/Servlet的,仍然是JSP/Servlet架構,因而學習曲線相對簡單。在實際使用過程中,JSF也會存在一些不足:

    作為新興的MVC框架,用戶相對較少,相關資源也不是非常豐富。

    —  JSF并不是一個完全組件化的框架,它依然是基于JSP/Servlet架構的。

      JSF的成熟度還有待進一步提高。

    2Tapestry

    Tapestry并不是一種單純的MVC框架,它更像MVC框架和模板技術的結合,它不僅包含了前端的MVC框架,還包含了一種視圖層的模板技術,使用Tapestry完全可以與Servlet/JSP API分離,是一種非常優秀的設計。

    通過使用Tapestry,開發者完全不需要使用JSP技術,用戶只需要使用Tapestry提供的模板技術即可,Tapestry實現了視圖邏輯和業務邏輯的徹底分離。

    Tapestry使用組件庫替代了標簽庫,沒有標簽庫概念,從而避免了標簽庫和組件結合的問題。Tapsetry是完全組件化的框架。Tapestr只有組件或頁面兩個概念,因此,鏈接跳轉目標要么是組件,要么是頁面,沒有多余的path概念。組件名,也就是對象名稱,組件名稱和path名稱合二為一。

    Tapestry具有很高的代碼復用性,在Tapestry中,任何對象都可看作可復用的組件。JSP開發者是真正面向對象,而不是URL解析。對于對頁面要求靈活度相當高的系統,Tapestry是第一選擇。精確地錯誤報告,可以將錯誤定位到源程序中的行,取代了JSP中那種編譯后的提示。

    因此,筆者一直對Tapestry情有獨鐘:如果技術允許,使用Tapestry會帶給整個應用更加優雅的架構,更好的開發效率。

    3Spring MVC

    Spring提供了一個細致完整的MVC框架。該框架為模型、視圖、控制器之間提供了一個非常清晰的劃分,各部分耦合極低。SpringMVC是非常靈活的,它完全基于接口編程,真正實現了視圖無關。視圖不再強制要求使用JSP,可以使用Velocity、XSLT或其他視圖技術。甚至可以使用自定義的視圖機制——只需要簡單地實現View接口,并且把對應視圖技術集成進來。SpringControllersIoC容器管理。因此,單元測試更加方便。

    Spring MVC框架以DispatcherServlet為核心控制器,該控制器負責攔截用戶的所有請求,將請求分發到對應的業務控制器。

    Spring MVC還包括處理器映射、視圖解析、信息國際化、主題解析、文件上傳等。所有控制器都必須實現Controller接口,該接口僅定義ModelAndView handleRequestrequestresponse)方法。通過實現該接口來實現用戶的業務邏輯控制器。

    Spring MVC框架有一個極好的優勢,就是它的視圖解析策略:它的控制器返回一個ModelAndView對象,該對象包含視圖名字和ModelModel提供了Bean的名字及其對象的對應關系。視圖名解析的配置非常靈活,抽象的Model完全獨立于表現層技術,不會與任何表現層耦合:JSP、Velocity或者其他的技術——都可以和Spring整合。

     

    但相對于Tapestry框架而言,Spring MVC依然是基于JSP/Servlet API的。

    本文關鍵詞:BS、DWZ,b/s,web
    上一篇:BS平臺登錄方法[ 12-24 ] 下一篇:BS優化:分頁原理[ 01-04 ]
    回到頂部