日韩精品无码免费一区二区三区|青青久久久国产线免观|亚洲精品久久久久久久|国精品无码一区二区三区免费视频|亚洲熟妇无码中文高清免费|99久久久国产精品免费不卡|精品贵妇一区二区三区

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

聯(lián)系興邦電子

全國咨詢熱線:40000-63966

售后:0371-55132951/55132952

工廠:河南省 鄭州市 高新區(qū)蓮花街電子電器產(chǎn)業(yè)園

關(guān)于BS MVC常用框架介紹

文章出處:http://www.fang1.net 作者:興邦開發(fā)部 人氣: 發(fā)表時間:2015年12月28日

[文章內(nèi)容簡介]:目前常用的MVC框架,除了常用的ssh之外,還有一些非常流行的MVC框架,這些框架都提供了較好的層次分隔能力。在實(shí)現(xiàn)良好的MVC 分隔的基礎(chǔ)上,還提供一些輔助類庫,幫助應(yīng)用的開發(fā)。下面介紹一下目前常見的MVC框架。

關(guān)于BS MVC常用框架介紹

1JSF

準(zhǔn)確地說,JSF是一個標(biāo)準(zhǔn),而不是一個產(chǎn)品。目前,JSF已經(jīng)有兩個實(shí)現(xiàn)產(chǎn)品可供選擇,包含Sun的參考實(shí)現(xiàn)和ApacheMyFaces。大部分的時候,我們所說的JSF都是指Sun的參考實(shí)現(xiàn)。目前,JSF是作為JEE 5.0的一個組成部分,與JEE 5.0一起發(fā)布。

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

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

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

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

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

  JSF的成熟度還有待進(jìn)一步提高。

2Tapestry

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

通過使用Tapestry,開發(fā)者完全不需要使用JSP技術(shù),用戶只需要使用Tapestry提供的模板技術(shù)即可,Tapestry實(shí)現(xiàn)了視圖邏輯和業(yè)務(wù)邏輯的徹底分離。

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

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

因此,筆者一直對Tapestry情有獨(dú)鐘:如果技術(shù)允許,使用Tapestry會帶給整個應(yīng)用更加優(yōu)雅的架構(gòu),更好的開發(fā)效率。

3Spring MVC

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

Spring MVC框架以DispatcherServlet為核心控制器,該控制器負(fù)責(zé)攔截用戶的所有請求,將請求分發(fā)到對應(yīng)的業(yè)務(wù)控制器。

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

Spring MVC框架有一個極好的優(yōu)勢,就是它的視圖解析策略:它的控制器返回一個ModelAndView對象,該對象包含視圖名字和Model,Model提供了Bean的名字及其對象的對應(yīng)關(guān)系。視圖名解析的配置非常靈活,抽象的Model完全獨(dú)立于表現(xiàn)層技術(shù),不會與任何表現(xiàn)層耦合:JSPVelocity或者其他的技術(shù)——都可以和Spring整合。

 

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

本文關(guān)鍵詞:BS、DWZ,b/s,web
上一篇:BS平臺登錄方法[ 12-24 ] 下一篇:BS優(yōu)化:分頁原理[ 01-04 ]
回到頂部
钟祥市| 加查县| 永济市| 莲花县| 桦甸市| 乡宁县| 高安市| 马公市| 武山县| 马边| 大悟县| 虞城县| 高台县| 洞头县| 昌宁县| 剑阁县| 彭阳县| 定远县| 依安县| 商水县| 苍梧县| 浮梁县| 鄂州市| 静海县| 达日县| 闸北区| 汽车| 钟山县| 文昌市| 荃湾区| 新营市| 阳春市| 荥经县| 湘乡市| 巴林左旗| 论坛| 大余县| 都兰县| 建昌县| 顺义区| 新源县|