国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

J2EE WEB應(yīng)用架構(gòu)分析(1)

2019-11-18 16:00:06
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

1、架構(gòu)概述

J2EE體系包括java server pages(jsp) ,java SERVLET, enterPRise bean,WEB service等技術(shù)。這些技術(shù)的出現(xiàn)給電子商務(wù)時(shí)代的WEB應(yīng)用程序的開(kāi)發(fā)提供了一個(gè)非常有競(jìng)爭(zhēng)力的選擇。怎樣把這些技術(shù)組合起來(lái)形成一個(gè)適應(yīng)項(xiàng)目需要的穩(wěn)定架構(gòu)是項(xiàng)目開(kāi)發(fā)過(guò)程中一個(gè)非常重要的步驟。完成這個(gè)步驟可以形成一個(gè)主要里程碑基線。形成這個(gè)基線有很多好處:

各種因數(shù)初步確定:為了形成架構(gòu)基線,架構(gòu)設(shè)計(jì)師要對(duì)平臺(tái)(體系)中的技術(shù)進(jìn)行篩選,各種利弊的權(quán)衡。往往架構(gòu)設(shè)計(jì)師在這個(gè)過(guò)程中要閱讀大量的技術(shù)資料,聽(tīng)取項(xiàng)目組成員的建議,考慮領(lǐng)域?qū)<业男枨螅紤]贊助商成本(包括開(kāi)發(fā)成本和運(yùn)行維護(hù)成本)限額。一旦架構(gòu)設(shè)計(jì)經(jīng)過(guò)評(píng)審,這些因數(shù)初步地就有了在整個(gè)項(xiàng)目過(guò)程中的對(duì)項(xiàng)目起多大作用的定位。

定向技術(shù)培訓(xùn):一旦架構(gòu)師設(shè)計(jì)的架構(gòu)得到了批準(zhǔn)形成了基線,項(xiàng)目開(kāi)發(fā)和運(yùn)行所采用的技術(shù)基本確定下來(lái)了。眾多的項(xiàng)目經(jīng)理都會(huì)對(duì)預(yù)備項(xiàng)目組成員的技術(shù)功底感到擔(dān)心;他們需要培訓(xùn)部門(mén)提供培訓(xùn),但就架構(gòu)師面對(duì)的技術(shù)海洋,項(xiàng)目經(jīng)理根本就提不出明確的技術(shù)培訓(xùn)需求。怎不能夠?qū)w系中所有技術(shù)都進(jìn)行培訓(xùn)吧!有了架構(gòu)里程碑基線,項(xiàng)目經(jīng)理能確定這個(gè)項(xiàng)目開(kāi)發(fā)會(huì)采用什么技術(shù),這是提出培訓(xùn)需求應(yīng)該是最精確的。不過(guò)在實(shí)際項(xiàng)目開(kāi)發(fā)中,技術(shù)培訓(xùn)可以在基線確定之前與架構(gòu)設(shè)計(jì)并發(fā)進(jìn)行。

角色分工:有了一個(gè)好的架構(gòu)藍(lán)圖,我們就能準(zhǔn)確劃分工作。如網(wǎng)頁(yè)設(shè)計(jì),JSP 標(biāo)簽處理類設(shè)計(jì),SERVLET 設(shè)計(jì),session bean設(shè)計(jì),還有各種實(shí)現(xiàn)。這些任務(wù)在架構(gòu)藍(lán)圖上都可以清楚地標(biāo)出位置,使得項(xiàng)目組成員能很好地定位自己的任務(wù)。一個(gè)好的架構(gòu)藍(lán)圖同時(shí)也能規(guī)范化任務(wù),能很好地把任務(wù)劃分為幾類,在同一類中的任務(wù)的工作量和性質(zhì)相同或相似。這樣工作量估計(jì)起來(lái)有一個(gè)非常好的基礎(chǔ)。

運(yùn)行維護(hù):前面說(shuō)過(guò)各個(gè)任務(wù)在架構(gòu)圖上都有比較好的定位。任何人能借助它很快地熟悉整個(gè)項(xiàng)目的運(yùn)行情況,錯(cuò)誤出現(xiàn)時(shí)能比較快速地定位錯(cuò)誤點(diǎn)。另外,有了清楚的架構(gòu)圖,項(xiàng)目版本治理也有很好的版本樹(shù)軀干。

擴(kuò)展性:架構(gòu)如同一顆參天大樹(shù)的軀干,只要軀干根系牢,樹(shù)干粗,長(zhǎng)一些旁支,加一些樹(shù)葉輕而易舉無(wú)疑。同樣,有一個(gè)穩(wěn)定的經(jīng)得起考驗(yàn)的架構(gòu),增加一兩個(gè)業(yè)務(wù)組件是非常快速和輕易的。

大家都知道這些好處,一心想形成一個(gè)這樣的J2EE應(yīng)用程序架構(gòu)(就像在windows平臺(tái)中的MFC)。在這個(gè)路程中經(jīng)歷了兩個(gè)大的階段:

1.1、模型1

模型1其實(shí)不是一個(gè)什么穩(wěn)定架構(gòu),甚至談不上形成了架構(gòu)。模型1的基礎(chǔ)是JSP文件。它從HTTP的請(qǐng)求中提取參數(shù),調(diào)用相應(yīng)的業(yè)務(wù)邏輯,處理HTTP會(huì)話,最后生成HTTP文檔。一系列這樣的JSP文件形成一個(gè)完整的模型1應(yīng)用,當(dāng)然可能會(huì)有其他輔助類或文件。早期的aspphp 技術(shù)就屬于這個(gè)情況。

總的看來(lái),這個(gè)模型的好處是簡(jiǎn)單,但是它把業(yè)務(wù)邏輯和表現(xiàn)混在一塊,對(duì)大應(yīng)用來(lái)說(shuō),這個(gè)缺點(diǎn)是令人容忍不了的。

1.2、模型2

在經(jīng)過(guò)一番實(shí)踐,并廣泛借鑒和總結(jié)經(jīng)驗(yàn)教訓(xùn)之后,J2EE應(yīng)用程序終于迎來(lái)了MVC(模型-視圖-控制)模式。MVC模式并不是J2EE行業(yè)人士標(biāo)新立異的,所以前面我談到廣發(fā)借鑒。MVC的核心就是做到三層甚至多層的松散耦合。這對(duì)基于組件的,所覆蓋的技術(shù)不斷膨脹的J2EE體系來(lái)說(shuō)真是福音和救星。

它在瀏覽器(本文對(duì)客戶代理都稱瀏覽器)和JSP或SERVLET之間插入一個(gè)控制組件。這個(gè)控制組件集中了處理瀏覽器發(fā)過(guò)來(lái)的HTTP請(qǐng)求的分發(fā)邏輯,也就是說(shuō),它會(huì)根據(jù)HTTP請(qǐng)求的URL,輸入?yún)?shù),和目前應(yīng)用的內(nèi)部狀態(tài),把請(qǐng)求分發(fā)給相應(yīng)的WEB 層的JSP 或SERVLET。

另外它也負(fù)責(zé)選擇下一個(gè)視圖(在J2EE中,JSP,SERVLET會(huì)生成回給瀏覽器的Html從而形成視圖)。集中的控制組件也有利于安全驗(yàn)證,日志紀(jì)錄,有時(shí)也封裝請(qǐng)求數(shù)據(jù)給下面的WEB tier層。這一套邏輯的實(shí)現(xiàn)形成了一個(gè)像MFC的應(yīng)用框架。

1.3、多層應(yīng)用

Client tier客戶層:一般為瀏覽器或其他應(yīng)用。客戶層普遍地支持HTTP協(xié)議,也稱客戶代理。

WEB tier WEB應(yīng)用層:在J2EE中,這一層由WEB 容器運(yùn)行,它包括JSP, SERVLET等WEB部件。

EJB tier 企業(yè)組件層:企業(yè)組件層由EJB容器運(yùn)行,支持EJB, JMS, JTA 等服務(wù)和技術(shù)。

EIS tier 企業(yè)信息系統(tǒng)層:企業(yè)信息系統(tǒng)包含企業(yè)內(nèi)傳統(tǒng)信息系統(tǒng)如財(cái)務(wù),CRM等,特點(diǎn)是有數(shù)據(jù)庫(kù)系統(tǒng)的支持。

應(yīng)用框架目前主要集中在WEB層,旨在規(guī)范這一層軟件的開(kāi)發(fā)。其實(shí)企業(yè)組件層也可以實(shí)現(xiàn)這個(gè)模型,但目前主要以設(shè)計(jì)模式的形式存在。而且有些框架可以擴(kuò)充,有了企業(yè)組件層組件的參與,框架會(huì)顯得更緊湊,更自然,效率會(huì)更高。

2、候選方案



發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 天门市| 日土县| 定陶县| 红原县| 栖霞市| 延津县| 洞口县| 辽阳市| 兰西县| 南阳市| 比如县| 凉城县| 军事| 阜康市| 石家庄市| 成安县| 绥化市| 华安县| 竹溪县| 崇仁县| 铜山县| 当雄县| 琼结县| 阳谷县| 关岭| 昌图县| 日土县| 琼中| 清远市| 锡林郭勒盟| 青龙| 海门市| 洛阳市| 永康市| 获嘉县| 永泰县| 板桥市| 上栗县| 怀化市| 邻水| 静乐县|