六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

現(xiàn)代Java Web開發(fā)架構(gòu)區(qū)分

[摘要]當(dāng)主流計(jì)算機(jī)應(yīng)用軟件開始遷移到客戶/服務(wù)器體系結(jié)構(gòu)時(shí),程序員們開始尋找方法以簡(jiǎn)化使用類似技術(shù)并且在結(jié)構(gòu)也類似的工程的開發(fā)。這就為現(xiàn)代軟件開發(fā)框架打好了基礎(chǔ)。  隨著基于萬(wàn)維網(wǎng)的應(yīng)用程序服務(wù)器的發(fā)展及其相關(guān)的應(yīng)用軟件的膨脹,支持這些技術(shù)的開發(fā)框架也隨著蓬勃發(fā)展。當(dāng)前,在企業(yè)開發(fā)領(lǐng)域中出現(xiàn)了許多特別適...
當(dāng)主流計(jì)算機(jī)應(yīng)用軟件開始遷移到客戶/服務(wù)器體系結(jié)構(gòu)時(shí),程序員們開始尋找方法以簡(jiǎn)化使用類似技術(shù)并且在結(jié)構(gòu)也類似的工程的開發(fā)。這就為現(xiàn)代軟件開發(fā)框架打好了基礎(chǔ)。

  隨著基于萬(wàn)維網(wǎng)的應(yīng)用程序服務(wù)器的發(fā)展及其相關(guān)的應(yīng)用軟件的膨脹,支持這些技術(shù)的開發(fā)框架也隨著蓬勃發(fā)展。當(dāng)前,在企業(yè)開發(fā)領(lǐng)域中出現(xiàn)了許多特別適合于Java J2EE平臺(tái)的軟件開發(fā)框架。

  在本文中,我將集中討論現(xiàn)代的Java開發(fā)框架,分析它們的特征和各自的使用優(yōu)點(diǎn)。另外,我還想比較目前流行的生產(chǎn)質(zhì)量框架,例如Struts,Spring和Hibernate,并詳細(xì)討論其基本相似性及有關(guān)基本概念。

  我將簡(jiǎn)短分析被用于支持這些框架的企業(yè)開發(fā)環(huán)境或工具箱,例如Borland JBuilder,Eclipse以及BEA Workbench。請(qǐng)記住,市場(chǎng)上有許多有關(guān)這些開發(fā)框架的圖書;然而,在任何一篇文章中,要對(duì)它們進(jìn)行深入描述是不可能的。不過(guò),我將盡力討論最廣泛地使用的概念。

  1. 共同點(diǎn)

  幾乎所有現(xiàn)代的網(wǎng)絡(luò)開發(fā)框架都遵循了模型-視圖-控制(MVC)設(shè)計(jì)模式--商業(yè)邏輯和描述被分開,由一個(gè)邏輯流控制器來(lái)協(xié)調(diào)來(lái)自客戶端的請(qǐng)求和服務(wù)器上將采取的行動(dòng)。這條途徑成為了網(wǎng)絡(luò)開發(fā)的事實(shí)上的標(biāo)準(zhǔn)。每個(gè)框架的內(nèi)在的機(jī)制當(dāng)然是不同的,但是開發(fā)者們使用來(lái)設(shè)計(jì)和實(shí)現(xiàn)他們的Web應(yīng)用軟件的API是很類似的。差別還存在于每個(gè)框架提供的擴(kuò)展方面,例如標(biāo)簽庫(kù),JavaServer Faces或JavaBean包裝器等。

  所有的框架使用不同的技術(shù)來(lái)協(xié)調(diào)在Web應(yīng)用程序之內(nèi)的導(dǎo)航,例如XML配制文件,java屬性文件或定制屬性。所有的框架在控制器模塊實(shí)現(xiàn)的方法方面也存在明顯的不同。例如,EJB可能實(shí)例化在每個(gè)請(qǐng)求中需要的類或使用Java反射動(dòng)態(tài)地調(diào)用一個(gè)適當(dāng)?shù)男袆?dòng)(Action)類。另外,不同框架在各自引入的概念上也有所不同。例如,一個(gè)框架可能定義用戶請(qǐng)求和反應(yīng)(以及錯(cuò)誤)場(chǎng)所,而另外一個(gè)框架可能僅僅定義一個(gè)完整的流--從一個(gè)請(qǐng)求到多個(gè)響答和隨后的再請(qǐng)求……

  各種Java框架在它們組織數(shù)據(jù)流的方法方面是很類似的。在請(qǐng)求發(fā)出后,在應(yīng)用程序服務(wù)器上產(chǎn)生一些行動(dòng);而作為響應(yīng),一些可能包含對(duì)象集的數(shù)據(jù)總是被發(fā)送到JSP層。然后,從那些對(duì)象--可能是有setter和getter方法的簡(jiǎn)單類,javabeans,值對(duì)象,或者一些集合對(duì)象--中提取數(shù)據(jù)。現(xiàn)代的Java框架還想方設(shè)法簡(jiǎn)化開發(fā)者的開發(fā)任務(wù),如通過(guò)使用簡(jiǎn)易的API,數(shù)據(jù)庫(kù)連接池,甚至數(shù)據(jù)庫(kù)調(diào)用包等提供自動(dòng)化的追蹤方式來(lái)實(shí)現(xiàn)。一些框架或者能夠鉤進(jìn)(hooked into)另外的J2EE技術(shù)中,例如JMS(Java消息服務(wù))或JMX,或把這些技術(shù)集成到一起。服務(wù)器數(shù)據(jù)持續(xù)性和日志也有可能成為框架的一部分。

  2. 企業(yè)開發(fā)環(huán)境

  一些框架在Web開發(fā)者社區(qū)和企業(yè)發(fā)展領(lǐng)域變得相當(dāng)流行。隨著這些框架的日漸成熟并開始發(fā)行穩(wěn)定的版本,商業(yè)的IDE(集成發(fā)展環(huán)境)開始為這些框架提供支持并把他們納入到自己的產(chǎn)品中。一些IDE甚至基于框架的概念開發(fā)出整個(gè)的產(chǎn)品,例如,BEA WebLogic Workshop就是基于Struts框架建立起來(lái)的。

  Borland Jbuilder為Struts提供了內(nèi)建的支持,也支持JSF和JSTL。


  Eclipse平臺(tái)已成為一個(gè)很流行的開發(fā)工具,部分因?yàn)樗腔诓寮模糠忠驗(yàn)樗鼘?duì)于Web框架的支持。現(xiàn)在,出現(xiàn)了眾多的Eclipse插件,甚至完整的基于Eclipse的IDE。許多插件被設(shè)計(jì)適合于Struts框架開發(fā),例如MyEclipse(www.myeclipse.org)或M7(www.m7.com)。


  大多數(shù)IDE都具有圖形化的流程和可視化對(duì)象(類代理)。例如,下面是一個(gè)JBuilder的行動(dòng)(Action)設(shè)計(jì)器,用于規(guī)劃Web應(yīng)用程序的頁(yè)面順序。

  WebLogic Workshop引入Java頁(yè)面流程技術(shù),它擴(kuò)展了Struts框架而提供了一個(gè)簡(jiǎn)化的開發(fā)模型并增加了另外一些特性。Workshop使用頁(yè)面流(Page Flows),實(shí)現(xiàn)輕易地把用戶接口與導(dǎo)航和商業(yè)邏輯分離開來(lái)。頁(yè)面流由JSP頁(yè)組成,這些頁(yè)面包含用戶接口元素和一個(gè)控制器文件(JPF)--它包含由用戶提供的數(shù)據(jù)將怎樣被處理的指令以及下一步什么頁(yè)面將被返回到用戶的信息。頁(yè)面流動(dòng)提供給開發(fā)者一個(gè)可視化的Web應(yīng)用程序總體輪廓,它讓開發(fā)者能夠看到直觀地分析不同的JSP頁(yè)彼此相關(guān)聯(lián),并實(shí)現(xiàn)Web應(yīng)用程序整體結(jié)構(gòu)的快速建立。


  MyEclipse提供類似的特征,并帶有更多吸引人的代價(jià)標(biāo)簽。


  3. Apache Struts框架

  Struts框架是一開源產(chǎn)品,基于模型-視圖-控制器(MVC)設(shè)計(jì)范例來(lái)開發(fā)Web應(yīng)用軟件。它使用并且擴(kuò)展了Java Servlet API,最初由Craig McClanahan創(chuàng)建。在2000年5月,它被捐贈(zèng)到Apache Foundation。Struts框架展示了一個(gè)強(qiáng)有力的定制標(biāo)簽庫(kù),平鋪顯示,表單檢驗(yàn)和I18N(國(guó)際化)。另外,Struts支持許多描述層,包括JSP,XML/XSLT,JavaServerFaces(JSF)和Velocity;還支持一些模型層,包括JavaBeans和EJB。

  4. Spring框架

  Spring框架是一個(gè)分層的Java/J2EE應(yīng)用程序框架,基于Expert One-on-One J2EE設(shè)計(jì)和發(fā)行的代碼。Spring框架提供一種簡(jiǎn)單的開發(fā)技術(shù),用于自動(dòng)化處理工程中大量的屬性文件和助理類。

  Spring框架包括的主要特色有:

  ·強(qiáng)有力的基于JavaBeans的配置管理,使用Inversion-of-Control(IoC)原則。

  ·一個(gè)核心bean工廠,可用在任何環(huán)境,從applets到J2EE容器程序。

  ·通用的抽象層適合于數(shù)據(jù)庫(kù)事務(wù)管理,允許可插入的事務(wù)管理器,并且不需要處理低層次的問(wèn)題就可容易地劃分各事務(wù)的界限。

  ·一個(gè)很有意義的異常處理的JDBC抽象層。

  ·與Hibernate集成到一起,DAO實(shí)現(xiàn)支持以及事務(wù)策略。

  5. Hibernate框架

  Hibernate是一適合于Java語(yǔ)言的對(duì)象-關(guān)系映射(ORM)解決方案。它也是開源軟件,類似Struts,并且在LGPL保護(hù)下發(fā)布。Hibernate被一群來(lái)自世界各地的Java軟件開發(fā)者所共同開發(fā)。它提供一個(gè)易用的框架來(lái)實(shí)現(xiàn)把一個(gè)面向?qū)ο蟮挠蚰P陀成涞揭粋鹘y(tǒng)的關(guān)系數(shù)據(jù)庫(kù)。它不僅負(fù)責(zé)從Java類到數(shù)據(jù)庫(kù)表格(以及來(lái)自Java數(shù)據(jù)類型的SQL數(shù)據(jù)類型)的映射,而且還提供數(shù)據(jù)查詢和檢索能力,并能大大減少花在SQL和JDBC手工數(shù)據(jù)處理上的開發(fā)時(shí)間。

  Hibernate的目標(biāo)是減輕開發(fā)者的與大量普通的數(shù)據(jù)持續(xù)性相聯(lián)系的編程任務(wù)。Hibernate還能夠適應(yīng)開發(fā)進(jìn)程,無(wú)論它是剛開始設(shè)計(jì)還是來(lái)自一現(xiàn)成的數(shù)據(jù)庫(kù)。Hibernate可以自動(dòng)生成SQL,使開發(fā)者擺脫了手工處理結(jié)果集和進(jìn)行對(duì)象轉(zhuǎn)化的繁瑣任務(wù),并能使應(yīng)用程序移植到所有的SQL數(shù)據(jù)庫(kù)。它還能提供透明的持續(xù)性,對(duì)持續(xù)性類的唯一的要求的是實(shí)現(xiàn)一個(gè)無(wú)參數(shù)的構(gòu)造器。

  這個(gè)框架典型地使用在JavaSwing應(yīng)用軟件、基于Servlet的Java應(yīng)用軟件和使用EJBsession beans的J2EE應(yīng)用軟件中。

  6. 結(jié)論

  本文概述了現(xiàn)代最流行的Java Web開發(fā)框架。當(dāng)然,還有更多框架尚未描述,開源和商業(yè)化的都有,例如WebWork(http://www.opensymphony.com/webwork/)或Tapestry(http://jakarta.apache.org/tapestry/);而許多框架通過(guò)擴(kuò)展另外的MVC框架在內(nèi)部被成功開發(fā)。當(dāng)前,最流行的框架是Apache Struts。當(dāng)Web開發(fā)競(jìng)技場(chǎng)繼續(xù)演變它的工具和編程方法時(shí),Java應(yīng)用程序框架也將繼續(xù)成長(zhǎng)下去。Java Web開發(fā)框架的未來(lái)一片明亮!



主站蜘蛛池模板: 深夜福利亚洲 | 色无极影院亚洲 | 日韩福利视频精品专区 | 日韩一级生活片 | 一本久久精品一区二区 | 在线亚洲免费 | 中文字幕天堂网 | 亚洲第一在线视频 | 日本在线精品 | 天天操天天擦 | 视频一区精品 | 欧美一级精品 | 日韩美视频网站 | 天堂资源站 | 亚洲ay| 午夜免费片 | 亚洲精品国产福利片 | 日韩国产成人资源精品视频 | 中文字幕日韩三级 | 亚洲成a人片77777kkkk | 又大又硬又爽又粗又快的视频免费 | 中文字幕免费在线视频 | 亚洲精品视频在线观看你懂的 | 日韩亚洲综合精品国产 | 日本a级三级三级三级久久 日本a级片在线播放 | 日本高清在线视频www色下载 | 性做久久久久久 | 伊人久久大香线蕉免费视频 | 四虎精品在线观看 | 伊人青青视频 | 午夜性色福利影院 | 中文字幕激情视频 | 一本久道久久综合婷婷 | 亚洲欧美日韩三级 | 亚洲国产成人久久精品hezyo | 偷窥综合网 | 欧美在线a级高清 | 日本特黄特色aa大片免费 | 日韩一区二紧身裤 | 污污的视频在线免费观看 | 真实国产乱子伦精品一区二区三区 |