一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

用struts framework開(kāi)發(fā)應(yīng)用程序

 昵稱662 2005-08-06

Struts Framework是一種基于Java的技術(shù),Web應(yīng)用程序開(kāi)發(fā)人員通過(guò)Struts Framework即可充分利用面向?qū)ο笤O(shè)計(jì)、代碼重用以及"編寫一次、到處運(yùn)行"的優(yōu)點(diǎn)。Struts提供了一種創(chuàng)建Web應(yīng)用程序的框架,其中對(duì)應(yīng)用程序的顯示、表示和數(shù)據(jù)的后端代碼進(jìn)行了抽象。

Struts最早于2002年5月作為Jakarta項(xiàng)目的組成部分問(wèn)世,Jakata項(xiàng)目由Apache Foundation.運(yùn)做。項(xiàng)目的創(chuàng)立者希望改進(jìn)和提高Java Server Pages (JSPs)、servlet、標(biāo)簽庫(kù)以及面向?qū)ο蟮募夹g(shù)水準(zhǔn)。在鉆研Struts之前你應(yīng)該比較熟悉JSP、Java編程和一定的設(shè)計(jì)模式,尤其應(yīng)該了解MVC(Model-View-Controller:模型、視圖和控制器)軟件程序架構(gòu)。學(xué)習(xí)Struts一開(kāi)始會(huì)比較難,一旦理解了這一技術(shù)你將發(fā)現(xiàn)自己掌握了一種開(kāi)發(fā)大規(guī)模Web應(yīng)用程序的設(shè)計(jì)利器。

MVC原理

Struts是對(duì)MVC設(shè)計(jì)模式的一種實(shí)現(xiàn)。MVC設(shè)計(jì)模式為構(gòu)建可擴(kuò)展、可重用的代碼打下了一個(gè)堅(jiān)實(shí)的基礎(chǔ)。MVC設(shè)計(jì)模式最吸引人之處在于它迫使你必須抽象自己的代碼,把項(xiàng)目分解為表示、邏輯和控制三部分,它們的作用正如一個(gè)交響樂(lè)團(tuán)中的音樂(lè)、團(tuán)員和指揮。

MVC設(shè)計(jì)模式中的"模型"指的是真正完成任務(wù)的代碼。對(duì)大多Web應(yīng)用程序來(lái)說(shuō),功能比界面感覺(jué)更重要。在模型同界面相分離的情況下,代碼即可實(shí)現(xiàn)可管理性和可重用性。比方說(shuō),假如你開(kāi)發(fā)了一個(gè)保險(xiǎn)應(yīng)用程序,其中的"模型"就是處理要求、計(jì)算保險(xiǎn)費(fèi)和同數(shù)據(jù)庫(kù)交互的那些代碼。模型通常也被稱做"業(yè)務(wù)邏輯"。

所謂的"視圖"其實(shí)就是界面。在MVC模式下,通常的設(shè)計(jì)前提是界面任務(wù)并不大。當(dāng)然,視圖應(yīng)該具有一定的功能性并遵守可用性的約束,但視圖(界面)不應(yīng)當(dāng)處理數(shù)據(jù)。事實(shí)上,界面的每一部分都只能包含采集數(shù)據(jù)的足夠邏輯并把它傳遞給設(shè)計(jì)模式中的其他組成部分供處理。從理論上說(shuō),如果你在模型中實(shí)現(xiàn)全部業(yè)務(wù)邏輯那么你可以創(chuàng)建多個(gè)視圖,也就是桌面應(yīng)用程序、數(shù)據(jù)庫(kù)系統(tǒng)或者Web應(yīng)用程序的界面。由于所有最麻煩的工作代碼都保存在了模型上,所以創(chuàng)建新的視圖并不令人感到過(guò)分的痛苦,產(chǎn)生軟件編碼錯(cuò)誤的可能性也就隨之大大降低了。

"控制器"控制著模型和視圖之間的交互過(guò)程。它決定著向用戶返回怎樣的視圖、檢查通過(guò)界面輸入的信息以及選擇處理輸入信息的模型。

在介紹了MVC之后,現(xiàn)在我們就下載Struts Framework、了解Struts采用MVC設(shè)計(jì)技術(shù)的原理。

獲取Struts Framework

Struts Framework 可以從Jakarta項(xiàng)目的網(wǎng)站上獲取。目前可用的代碼版本還是1.0,但該版本是穩(wěn)定和成熟的版本。同Apache Foundation維護(hù)的其他項(xiàng)目一樣,Struts Framework是一種開(kāi)放源代碼軟件,所以你可以獲得軟件源代碼親自編譯程序或者直接下載二進(jìn)制版本。大多數(shù)用戶并不需要源代碼,但知道它的存在也不是壞事,說(shuō)不定以后就用得著。

Struts分派版隨帶了眾多示例,所有這些示例都打包為WAR文件(Web Application Archive)供部署在應(yīng)用服務(wù)器上。假如你想用Struts創(chuàng)建自己的應(yīng)用程序,那么你會(huì)在Struts庫(kù)目錄下找到所有你需要的東西。在這個(gè)目錄下有個(gè)JAR文件包含了所有的框架源代碼和標(biāo)簽庫(kù)的全部定義。在創(chuàng)建新應(yīng)用程序的時(shí)候需要把這些文件拷到WEB-INF目錄下供部署用。將來(lái)我們會(huì)撰文討論如何完成這些工作,目前你僅需要知道它們都放在什么地方就可以了。

MVC和Struts Framework

現(xiàn)在我們就看看Struts Framework是如何采用MVC模式來(lái)創(chuàng)建Web應(yīng)用程序的。

視圖

Struts采用JSP作為MVC的視圖。每一視圖都是采用了定制標(biāo)簽庫(kù)的JSP頁(yè)面,這些定制標(biāo)簽庫(kù)則由Struts Framework提供。全部表單元素都是用定制標(biāo)簽編碼的,所以這些頁(yè)面能夠很方便地同控制器交互。每一個(gè)表單都通過(guò)映射JSP到servlet的請(qǐng)求這一方式指向控制器的特定入口點(diǎn)。

控制器

控制器就是Java servlet,由Struts Framework提供,負(fù)責(zé)視圖和模型之間的交互。控制器的每個(gè)入口點(diǎn)都由名為struts-config.xml的配置文件設(shè)置。該文件把來(lái)自視圖的請(qǐng)求映射為特定的java類以進(jìn)行相應(yīng)的處理??刂破鬟€指定下一個(gè)視圖的位置。

模型

Java beans就是模型的代表。對(duì)進(jìn)入控制器的每個(gè)入口點(diǎn)來(lái)說(shuō),bean的作用是存儲(chǔ)從視圖獲取的信息,同時(shí)被稱為"行動(dòng)類"一種Java類則被指定為對(duì)表單輸入采取行動(dòng)。行動(dòng)類(action class)實(shí)現(xiàn)了業(yè)務(wù)邏輯。

以上介紹了Struts Framework同MVC之間的關(guān)系,接下來(lái)的第二部分則引領(lǐng)讀者用Struts創(chuàng)建應(yīng)用程序。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    人人爽夜夜爽夜夜爽精品视频| 激情五月激情婷婷丁香| 国产高清三级视频在线观看| 九九热这里只有精品视频| 精品人妻精品一区二区三区| 日韩黄色一级片免费收看| 国产精品人妻熟女毛片av久| 亚洲一区二区三区四区| 婷婷九月在线中文字幕| 99福利一区二区视频| 国产精品国三级国产专不卡| 女人精品内射国产99| 久久黄片免费播放大全| 丝袜视频日本成人午夜视频| 午夜精品国产精品久久久| 欧美日韩校园春色激情偷拍| 久久精品国产亚洲av久按摩| 韩日黄片在线免费观看| 91蜜臀精品一区二区三区| 九九热这里只有精品视频| 九九视频通过这里有精品| 久久精品国产在热久久| 99国产高清不卡视频| 国产精品亚洲综合色区韩国| 国产超碰在线观看免费| 熟女一区二区三区国产| 激情五月天免费在线观看| 欧美激情床戏一区二区三| 五月天丁香亚洲综合网| 国产又粗又猛又大爽又黄同志| 日韩一级免费中文字幕视频| 免费国产成人性生活生活片| 91人人妻人人爽人人狠狠| 日本欧美视频在线观看免费 | 免费特黄欧美亚洲黄片| 免费黄色一区二区三区| 一本色道久久综合狠狠躁| 在线亚洲成人中文字幕高清| 麻豆国产精品一区二区三区| 精品视频一区二区不卡| 不卡在线播放一区二区三区|