
2006年2月18日
開(kāi)學(xué)第一周在匆匆忙忙的腳步中過(guò)去了!下了一周的雨也終于停了,第一個(gè)周末,也沒(méi)什么大事情,就拿struts來(lái)開(kāi)開(kāi)涮吧!
說(shuō)干就干!因?yàn)樽约阂郧耙呀?jīng)看過(guò)一點(diǎn)struts,并且做過(guò)一個(gè)小例子(記得以前好像有個(gè)wizard,就是教你一步步用struts

)。但還沒(méi)有深入它的代碼,對(duì)它的流程當(dāng)時(shí)了解過(guò),不過(guò)現(xiàn)在忘了

,唉,歲月不饒人,不服老不行,看著記性!
先把struts做個(gè)Introduction吧,正好在介紹的同時(shí)也給自己一個(gè)整理的機(jī)會(huì),看了一天了,整理一下思路吧!
首先講到struts,就不能不提Model 2,講到Model 2就不能不提到Model 1(

),其實(shí),這三者都離不開(kāi)一個(gè)東西,就是java中web application里面的最基本也是最重要的東西,servlet,不錯(cuò),我認(rèn)為它是個(gè)基礎(chǔ)(個(gè)人看法:),servlet是個(gè)好東西,sun公司認(rèn)為有兩種類型的web application:1、Presentation-oriented 2、Service-oriented。隨著Web被逐漸用于deliver service,那些service providers逐漸認(rèn)識(shí)到在Web中提供動(dòng)態(tài)內(nèi)容的重要性。隨之出現(xiàn)了CGI。CGI的缺點(diǎn)我就不說(shuō)啦,其實(shí)我沒(méi)大用過(guò)CGI,汗一個(gè)!不過(guò)據(jù)說(shuō)是有很多缺點(diǎn)的,比如平臺(tái)相關(guān)性,lack of scalability。于是servlet適時(shí)而出了!
關(guān)于servlet的細(xì)節(jié)我就不具體提了,我也有待學(xué)習(xí),這里之所以提到servlet,是因?yàn)閟truts中的一個(gè)核心部件就是一個(gè)servlet,所以在這里簡(jiǎn)單提一下servlet,以供讀者檢查自己是否應(yīng)該先去了解一下servlet。Model 1簡(jiǎn)單講就是只用JSP,而不用servlet,這里的用與不用,僅是對(duì)web開(kāi)發(fā)人員而言,因?yàn)镴SP最終還是會(huì)被translate為servlet(這里用translate是遵照官方用詞,國(guó)內(nèi)很多書翻為編譯,個(gè)人認(rèn)為不是很恰當(dāng))。其實(shí)出現(xiàn)Model 1的原因也很簡(jiǎn)單,因?yàn)橛胹ervlet來(lái)構(gòu)造一個(gè)網(wǎng)頁(yè)不勝其煩,一堆的out.pringln(...)讓人整個(gè)感覺(jué)是手工構(gòu)造一個(gè)網(wǎng)頁(yè),在這個(gè)所見(jiàn)即所得的今天,我們可能永遠(yuǎn)無(wú)法想象它的繁瑣性!于是出現(xiàn)了JSP,把那些工作交給了web container,我們只需用所見(jiàn)即所得的tool構(gòu)造web,然后在web中適當(dāng)?shù)牡胤郊尤雑ava代碼即可。好,點(diǎn)到為止,再具體就是jsp的內(nèi)容了。但后來(lái)人們發(fā)現(xiàn),完全拋棄servlet并不是一個(gè)好的idea,其中的一個(gè)關(guān)鍵問(wèn)題就是content與presentation混雜在一起,非常不利于維護(hù)和修改。于是人們又提出了結(jié)合jsp與servlet來(lái)開(kāi)發(fā)web,這就是Model 2,它本質(zhì)上是經(jīng)典MVC模式的一個(gè)變種。這里推薦一篇文章
Understanding JavaServer Pages Model 2 architecture ,專門介紹Model2的,希望對(duì)大家有所幫助,這也是struts官方網(wǎng)站上推薦的一篇文章!由于我們的主題是struts,所以我們就不細(xì)談這篇文章了。
當(dāng)然我也希望讀者對(duì)MVC模式有所了解,如果否,請(qǐng)看
MVC的源頭。了解一下它吧,一個(gè)很好的東東!
好,準(zhǔn)備東西講完了,我們下面開(kāi)始看struts!
struts從結(jié)構(gòu)上講是符合Model2的,先簡(jiǎn)單介紹一下它的情況,它的目的就是要解決Model 1中的flow control的問(wèn)題,并使得內(nèi)容(Model)與表現(xiàn)(View)徹底分離。Struts是在2000年5月由Craig R. McClanahan發(fā)起的。并在2001年7月發(fā)布了1.0版。(休息一下)
posted @
2006-02-18 21:06 未來(lái)刀客 閱讀(246) |
評(píng)論 (0) |
編輯 收藏
展現(xiàn)自我,交流溝通,共同進(jìn)步!
|
|
29 | 30 | 31 | 1 | 2 | 3 | 4 |
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 1 | 2 | 3 | 4 |
5 | 6 | 7 | 8 | 9 | 10 | 11 |
常用鏈接
留言簿(2)
隨筆分類
隨筆檔案
文章分類
文章檔案
收藏夾
收藏Blog
最新隨筆
最新評(píng)論

閱讀排行榜
評(píng)論排行榜