• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于JSP的動態(tài)網(wǎng)頁開發(fā)技術(shù)

    2015-04-15 18:22:53宋國平
    關(guān)鍵詞:應(yīng)用程序網(wǎng)頁代碼

    宋國平

    (吉林廣播電視大學(xué),吉林 長春 130022)

    隨著科學(xué)技術(shù)水平的提高以及Web的廣泛應(yīng)用,多種多樣的高級編程語言和高級功能的程序邏輯相繼出臺,從而促進(jìn)了客戶端-服務(wù)端的服務(wù)模式。在此過程中,動態(tài)網(wǎng)頁技術(shù)得以誕生。而JSP技術(shù)能夠幫助Web站點(diǎn)的動態(tài)網(wǎng)頁設(shè)計(jì)和開發(fā)人員提供一種既簡單又高效的創(chuàng)建和維護(hù)動態(tài)網(wǎng)頁的開發(fā)技術(shù)。本文論述了JSP技術(shù)的原理和特點(diǎn),并通過分析JSP技術(shù)的優(yōu)勢,表明了JSP技術(shù)在動態(tài)網(wǎng)頁開發(fā)方面的重要意義。

    一、JSP技術(shù)的原理

    JSP是Sun公司推出的新一代站點(diǎn)開發(fā)語言,JSP技術(shù)脫離了硬件平臺的束縛,從而實(shí)現(xiàn)了靜態(tài)和動態(tài)網(wǎng)頁的分離,提高了運(yùn)行效率。JSP技術(shù)類似于Microsoft的ASP技術(shù),JSP也對HTML標(biāo)記集合進(jìn)行了相應(yīng)的擴(kuò)展,而這些擴(kuò)展的標(biāo)記只能由支持它的服務(wù)器上的JSP引擎對其進(jìn)行識別并負(fù)責(zé)解釋執(zhí)行。當(dāng)Web服務(wù)器接受一個從客戶端發(fā)來的用戶請求時,JSP或者Servlet引擎把JSP文件轉(zhuǎn)換成Servlet代碼,把結(jié)果傳送給JVM,此時JVM會對其進(jìn)行編譯把生成的文件存放在服務(wù)器上,繼續(xù)執(zhí)行,然后把結(jié)果通報(bào)給JSP或者Servlet引擎,然后再把結(jié)果傳回Web服務(wù)器。最后由Web服務(wù)器把結(jié)果以XML或者HTML頁面的形式返回到客戶端,最終用戶能夠通過瀏覽器查看反饋的結(jié)果。因?yàn)橹挥迷谟脩糇龀稣埱髸r,Servlet代碼才會執(zhí)行,所以在首次對Servlet進(jìn)行調(diào)用時會有幾秒鐘的加載時間,但是一旦JSP被編譯執(zhí)行一次之后,它的代碼就以一個獨(dú)立的線程在后臺運(yùn)行,因此,以后當(dāng)用戶發(fā)出請求時,不用重新編譯就能直接進(jìn)行運(yùn)行。

    二、JSP技術(shù)的特點(diǎn)

    JSP技術(shù)是對Servlet技術(shù)的延伸和拓展,它為基于JAVA環(huán)境開發(fā)多層次結(jié)構(gòu)的動態(tài)Web應(yīng)用程序提供更為方便高效的方法。JSP技術(shù)具有以下一些特點(diǎn):

    (1)分離內(nèi)容的生成與顯示。這是JSP技術(shù)的最大特點(diǎn),使用JSP技術(shù),Web頁面的開發(fā)和設(shè)計(jì)人員能夠使用XML和HTML標(biāo)記來格式化和實(shí)際開發(fā)最終的頁面,并使用ISP標(biāo)識或者小腳本來生成頁面上的動態(tài)內(nèi)容,并運(yùn)用JSP對頁面上的動態(tài)內(nèi)容進(jìn)行生成。對生成的內(nèi)容在JavaBeans組件和標(biāo)識中進(jìn)行封裝,并且對腳本捆綁,由引擎對服務(wù)器端運(yùn)行的全部JSP標(biāo)識和腳本進(jìn)行解釋,從而生成所請求的內(nèi)容。這樣做,不僅僅使基于HTML的任何可能性得以保證,還能夠幫助作者保護(hù)自己的代碼。

    (2)提高程序的執(zhí)行效率。因?yàn)閹缀跛械钠脚_都支持Java,因此可以說幾乎能夠在全部平臺下執(zhí)行?;贘ava編程語言的JSP頁面的內(nèi)置腳本語言,擁有Java編程語言“一次編寫,各處運(yùn)行”的特點(diǎn),因此不同平臺的轉(zhuǎn)移,Java和JSP是不需要進(jìn)行重新編譯的。從而加快了運(yùn)行速度。

    (3)對組件的重用。當(dāng)處理較為復(fù)雜的應(yīng)用程序時,多數(shù)的JSP頁面能夠通過依賴可重用的組件、跨平臺的組件(Enterprise JavaBeans或者Java Beans組件)來進(jìn)行,通過對組件的重用能夠加速總體開發(fā)的過程,不斷完善技能的開發(fā)并且能夠優(yōu)化結(jié)果,并進(jìn)而使兩者處于平衡狀態(tài)。

    (4)采用標(biāo)記進(jìn)而簡化了頁面的開發(fā)。并非所有的Web頁面開發(fā)和設(shè)計(jì)人員都是熟悉腳本語言的編程人員,而Java技術(shù)對眾多在HTML標(biāo)記中生成的動態(tài)內(nèi)容所必需的易用功能進(jìn)行了封裝。標(biāo)準(zhǔn)的JSP對Java組件進(jìn)行訪問和實(shí)例化,通過檢索或者設(shè)置組件的屬性,下載Applet,來執(zhí)行更為繁雜和耗費(fèi)大量時間的功能。開發(fā)人員把易用功能創(chuàng)設(shè)到個人的標(biāo)記庫中,有利于Web頁面的開發(fā)設(shè)計(jì)人員更為簡單高效的進(jìn)行Web頁面的開發(fā)。

    (5)可擴(kuò)展性。可擴(kuò)展性指的是一個軟件進(jìn)行擴(kuò)展和增強(qiáng)的能力,即已有的特性是否能夠較為容易地修改,新特性是否能夠很容易地加入進(jìn)去,而且不會對系統(tǒng)的其他的部分產(chǎn)生副作用。在動態(tài)網(wǎng)頁開發(fā)過程中,通過開發(fā)設(shè)計(jì)人員創(chuàng)設(shè)的標(biāo)記庫,使的JSP技術(shù)得以擴(kuò)展。

    (6)對不同的瀏覽器均可以兼容。JSP技術(shù)在不同的瀏覽器中都可以兼容。

    (7)與Java平臺的有機(jī)結(jié)合,使得JSP技術(shù)同時具有了Java的全部優(yōu)點(diǎn)。Java2平臺的重要組成部分之一就是JSP技術(shù),JSP技術(shù)的腳本語言即為Java語言,更為充分的發(fā)揮Java語言的功能?;贘SP技術(shù)能開發(fā)創(chuàng)建更為可靠和可伸縮的Web應(yīng)用程序。此外,JSP技術(shù)還包含了易擴(kuò)充性、高效的存儲管理以及各種API支持和強(qiáng)大的數(shù)據(jù)庫支持。

    (8)JSP技術(shù)提供了一部分隱含對象。這些隱含的對象在JSP頁面中不用首先聲明就可以直接引用。這一特點(diǎn)能促使腳本的功能不斷增強(qiáng),從而使編程過程更為簡單和高效。

    三、JSP技術(shù)的優(yōu)勢

    作為一種字節(jié)代碼,Java的編譯代碼在運(yùn)行時通過操作系統(tǒng)上的一個JVM(Java VirtualMachine)虛擬機(jī)解釋。字節(jié)代碼能夠不需要任何改動就可以再全部的平臺上進(jìn)行遷移,特別是在使用圖形化界面時,因?yàn)镾ervlet是不需要任何圖形界面的,因此相比與傳統(tǒng)的Java程序,Servlet程序運(yùn)行速度很快。因?yàn)镠TML的GUI非常少,所以它們在服務(wù)器運(yùn)行時不需要加載冗長繁雜的GUI。此外,只有在用戶請求時,Servlet的字節(jié)代碼才會執(zhí)行,雖然首次調(diào)用Servlet之時,會有一小段時間的加載,但是因?yàn)榉?wù)器對運(yùn)行過的Servlet已經(jīng)進(jìn)行了緩存,所以后續(xù)的請求在處理時會非常迅速。同時JSP技術(shù)與Java平臺的有機(jī)結(jié)合,使得當(dāng)前的JSP服務(wù)器,均攜帶Java即時編譯器,因此,相比于ASP和PHP代碼每次都要解釋才能執(zhí)行,JSP的執(zhí)行要快很多,特別是當(dāng)處在循環(huán)操作時的代碼,JSP技術(shù)的速度能夠快1-2個數(shù)量級。

    與其他的動態(tài)網(wǎng)頁技術(shù)的性能想比較,由于ASP和PHP代碼每次都需要解釋才能進(jìn)行執(zhí)行,所以通過比較,JSP的執(zhí)行要快很多,特別是在進(jìn)行循環(huán)操作時,相比于其他技術(shù),JSP技術(shù)的執(zhí)行速度會更加迅速。同時,由于PHP技術(shù)本身具有非常多的缺陷,因?yàn)镻HP缺乏多層規(guī)模支持以及多層結(jié)構(gòu)的支持,所以發(fā)布計(jì)算數(shù)據(jù)庫必須運(yùn)用到大負(fù)荷的站點(diǎn)中,可以分開應(yīng)用邏輯層以及表示邏輯層,與此同時,還可以根據(jù)流量將同層分隔開,從而使二維陣列形成。但是這種技術(shù)支持在PHP中是缺乏的,而且PHP提供的數(shù)據(jù)庫具有不統(tǒng)一的接口,因此在電子商務(wù)中并不適用。而這些PHP的缺陷在JSP技術(shù)中并不存在。因此JSP技術(shù)相比于PHP技術(shù)而言更加具有應(yīng)用上的優(yōu)勢。

    四、JSP技術(shù)的實(shí)現(xiàn)方式

    利用JSP技術(shù)對動態(tài)網(wǎng)頁進(jìn)行開發(fā)的方式通常有兩種。一種是在JSP頁面中調(diào)用Java,以高效的存儲管理、易擴(kuò)充性以及各種API支持和強(qiáng)大的數(shù)據(jù)庫為依托,充分發(fā)揮Java的強(qiáng)大功能。另一種是在HTML頁面上直接嵌入Java程序,相當(dāng)于在HTML頁面上直接寫上Servlet的源代碼。這兩種方式在實(shí)現(xiàn)動態(tài)網(wǎng)頁開發(fā)上各有千秋,在實(shí)際的應(yīng)用中應(yīng)該依據(jù)項(xiàng)目的難以程度和開發(fā)設(shè)計(jì)者的能力選擇具體的使用方式。比如當(dāng)頁面的結(jié)構(gòu)相對復(fù)雜,混為一體的HTML代碼和Java代碼致使閱讀以及修改較為麻煩和困難時,可以采用第一種方式,這種方式把Java代碼從HTML頁面中分離開來,雖然這種方式需要維護(hù)的文件比較多,但它的結(jié)構(gòu)比較清晰,單獨(dú)的Java程序代碼能夠編譯為可以重用的組件,而且只要對HTML頁面和Java程序之間的參數(shù)傳遞機(jī)制進(jìn)行規(guī)范,就能幫助不同的開發(fā)設(shè)計(jì)人員對HTML頁面以及Java程序分別進(jìn)行負(fù)責(zé),對企業(yè)級的大項(xiàng)目節(jié)約了寶貴的時間,提高了設(shè)計(jì)的效率。當(dāng)設(shè)計(jì)開發(fā)者對HTML頁面設(shè)計(jì)和Java語言編程都很熟悉的情況下,采用第二種方式能使改動時所需維護(hù)的文件數(shù)目減少,從而簡化執(zhí)行過程。

    五、結(jié)束語

    綜上所述,本人通過論述JSP技術(shù)的原理和特點(diǎn),分析了JSP技術(shù)在動態(tài)網(wǎng)頁開發(fā)上的優(yōu)勢,得出以下結(jié)論:Java Servlet作為一種開發(fā)Web應(yīng)用的較為理想的架構(gòu)。JSP依托Servlet技術(shù),改進(jìn)和優(yōu)化了很多方面。由于JSP技術(shù)的跨平臺性、可擴(kuò)展性等其他的一些特點(diǎn),使得操作平臺和Web服務(wù)器以及其他的一些組件在不影響JSP基本應(yīng)用程序的基礎(chǔ)上能夠很簡單高效的進(jìn)行組件切換和升級。JSP應(yīng)用程序能適應(yīng)Web應(yīng)用程序的各種變化和發(fā)展?;谝陨纤龅腏SP技術(shù)的特點(diǎn)優(yōu)勢,JSP/Servlet解決方案被世界上很多大型的電子商務(wù)解決提供商所利用和采納。隨著Web的廣泛應(yīng)用,這種基于Java環(huán)境的嶄新的服務(wù)器端的動態(tài)網(wǎng)頁技術(shù),為Web站點(diǎn)的動態(tài)網(wǎng)頁開發(fā)和設(shè)計(jì)人員開拓了一條更為簡單、高效的道路。JSP技術(shù)已經(jīng)成為動態(tài)網(wǎng)頁開發(fā)的一項(xiàng)主流技術(shù),它的應(yīng)用必將在未來越來越廣泛。

    [1]黃理,等.JSP輕松開發(fā)W eb網(wǎng)站[M].北京:北京希望電子出版社,2001.

    [2]楊德華.W eb服務(wù)器端的動態(tài)網(wǎng)頁技術(shù).計(jì)算機(jī)應(yīng)用研究,1999:(10).

    [3]施汝軍.網(wǎng)站JSP后臺解決方案[M].北京:人民郵電出版社,2001:4-14.

    猜你喜歡
    應(yīng)用程序網(wǎng)頁代碼
    刪除Win10中自帶的應(yīng)用程序
    創(chuàng)世代碼
    動漫星空(2018年11期)2018-10-26 02:24:02
    創(chuàng)世代碼
    動漫星空(2018年2期)2018-10-26 02:11:00
    創(chuàng)世代碼
    動漫星空(2018年9期)2018-10-26 01:16:48
    創(chuàng)世代碼
    動漫星空(2018年5期)2018-10-26 01:15:02
    基于CSS的網(wǎng)頁導(dǎo)航欄的設(shè)計(jì)
    電子制作(2018年10期)2018-08-04 03:24:38
    基于URL和網(wǎng)頁類型的網(wǎng)頁信息采集研究
    電子制作(2017年2期)2017-05-17 03:54:56
    網(wǎng)頁制作在英語教學(xué)中的應(yīng)用
    電子測試(2015年18期)2016-01-14 01:22:58
    10個必知的網(wǎng)頁設(shè)計(jì)術(shù)語
    關(guān)閉應(yīng)用程序更新提醒
    電腦迷(2012年15期)2012-04-29 17:09:47
    景宁| 康保县| 巨野县| 康定县| 安吉县| 金溪县| 揭西县| 正蓝旗| 靖江市| 平湖市| 房山区| 徐州市| 青冈县| 崇明县| 翁牛特旗| 红桥区| 山东| 芷江| 潢川县| 盈江县| 乃东县| 广安市| 图木舒克市| 阳春市| 永和县| 东莞市| 祁东县| 班玛县| 长白| 深圳市| 石阡县| 霍林郭勒市| 修武县| 大洼县| 新晃| 方山县| 望奎县| 锦州市| 大悟县| 射洪县| 阿鲁科尔沁旗|