日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

jsp、servlet一家親

 Levy_X 2017-07-24

       上個(gè)月寫了《教你servlet入門》,今天來探究一下關(guān)于jsp的那些故事。

§ 回顧

    1. 什么是Web應(yīng)用程序?
    2. 什么是Servlet,和一般Java程序有什么區(qū)別?
    3. 什么是JSP,和Java是什么關(guān)系?
    4. JSP和Servlet有哪些異同點(diǎn)?
    5. JSP和Servlet的主要用途?

§ 一家親

        JSP:Java server  Pages,是由sun 公司倡導(dǎo)、許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。它在HTML代碼中插入JSP標(biāo)記及Java程序(Scriptlet)構(gòu)成JSP界面,擴(kuò)展名為.JSP。當(dāng)客戶端請(qǐng)求JSP文件時(shí),web服務(wù)器會(huì)執(zhí)行該JSP文件,然后以HTML的格式返回給客戶。而JSP是構(gòu)建在servlet智商的高層次的動(dòng)態(tài)網(wǎng)頁標(biāo)準(zhǔn)。所以從概念上來講,相對(duì)servlet而言,JSP沒有什么新東西,可以說概念是完全一樣的,只是在實(shí)現(xiàn)方式上稍有不同而已。因此,JSP就是servlet的一種變式。

§ JSP的運(yùn)行方式

        .JSP文件會(huì)在第一次被調(diào)用時(shí)進(jìn)行編譯,比如test.jsp文件會(huì)在第一次調(diào)用時(shí)被編譯為test_jsp.java文件,之后和servlet文件的編譯流程一樣,被編譯為.class文件。從這以后,如果再有客戶需要請(qǐng)求該JSP頁面,JSP頁面不需要重新編譯而是直接執(zhí)行第一次已經(jīng)編譯好的.class文件。下面我們通過一張時(shí)序圖來進(jìn)一步了解JSP文件的調(diào)用和編譯過程:


§  JSP的優(yōu)點(diǎn)

      1.一次編譯,多次、多處運(yùn)行

    JSP的腳本語言是Java語言,它具有Java語言的一切特性,像上圖中顯示的過程那樣,在JSP文件被編譯之后,有客戶再次請(qǐng)求該頁面時(shí),JSP不需要被重新編譯,而是直接執(zhí)行早已經(jīng)編譯好的.class文件,因此執(zhí)行效率會(huì)特別高。 

  2.組件可重用性,平臺(tái)無關(guān)性

    具有可重用性和跨平臺(tái)性的javaBeans和Ejb組件,為JSP程序的開發(fā)提供方便,我們可以將復(fù)雜的處理程序放到這些組件中,這樣我們通過多次使用這些組件,極大地減少了在JSP頁面中重寫重復(fù)的代碼,提高了效率,增強(qiáng)了代碼的重用性。

  3.降低耦合度,增加源程序代碼的安全性

    使用JSP技術(shù),web頁面開發(fā)人員可以使用HTML和xml標(biāo)識(shí)來設(shè)計(jì)和格式化最終頁面,使用JSP腳本或者標(biāo)識(shí)來生成頁面上的動(dòng)態(tài)內(nèi)容,生成動(dòng)態(tài)內(nèi)容的語句一般被封裝在JavaBean、ejb或者JSP腳本段中,這樣頁面的設(shè)計(jì)人員和頁面的編程人員的工作可以同步進(jìn)行。并且我們在客戶端通過查看源文件,看不到JSP標(biāo)識(shí)的語句,也看不到在組件中封裝好的代碼,這樣就達(dá)到了類似三層的解耦作用,有效保護(hù)了源代碼。

§ JSP和servlet的結(jié)合使用

      由于我們使用servlet處理大量的HTML文本(如拼接表格的HTML語句)時(shí),不僅僅任務(wù)量較大,而且不利于后期的維護(hù)和擴(kuò)展,所以我們處理前端界面效果時(shí)采用的JSP技術(shù),而對(duì)于程序的邏輯控制則使用servlet技術(shù)。

 

§ JSP和servlet的區(qū)別

       JSP技術(shù)是servlet技術(shù)的發(fā)展,所以本質(zhì)上就是servlet的簡(jiǎn)易方式。而兩者最大的不同點(diǎn)在于servlet的應(yīng)用邏輯是在Java文件中,并且完全從表示層中的HTML里分離出來。而JSP的情況是將Java和HTML組合成一個(gè)擴(kuò)展名為.JSP的文件。所以在實(shí)際應(yīng)用中,我們采用JSP來生成動(dòng)態(tài)的網(wǎng)頁頁面,采用servlet來控制業(yè)務(wù)流程也就是所謂的業(yè)務(wù)邏輯。所以JSP側(cè)重于視圖,而servlet注重對(duì)邏輯的控制。

    

    因此,在web建設(shè)中到底使用哪種技術(shù)周密詳細(xì)的事前規(guī)劃,而網(wǎng)站建設(shè)又不光是技術(shù)的問題,所以我們?cè)趯W(xué)習(xí)和對(duì)比JSP和servlet的同事更應(yīng)該注意從中汲取思想的精華,因?yàn)榧夹g(shù)會(huì)過時(shí),而思想?yún)s受用一生。


    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(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)論公約

    類似文章 更多