摘要:隨著Web技術(shù)的發(fā)展,網(wǎng)頁由最初的靜態(tài)網(wǎng)頁轉(zhuǎn)變?yōu)閮?nèi)容更加豐富的動態(tài)網(wǎng)頁,動態(tài)網(wǎng)頁具有良好的交互性、數(shù)據(jù)庫查詢、提高瀏覽效率等優(yōu)勢。針對當前在動態(tài)網(wǎng)頁制作中常用到的三種技術(shù)ASP、PHP、JSP,本文分析了這三種動態(tài)網(wǎng)頁制作結(jié)束的特點以及應(yīng)用范圍,并就其應(yīng)用前景以及發(fā)展做了探討。
關(guān)鍵詞:動態(tài)網(wǎng)頁 ASP PHP JSP 應(yīng)用分析
中圖分類號:TP393.09 文獻標識碼:A 文章編號:1007-9416(2016)10-0221-01
1 引言
動態(tài)網(wǎng)頁指的是跟靜態(tài)網(wǎng)頁相對的一種網(wǎng)頁編程技術(shù)。靜態(tài)網(wǎng)頁隨著html代碼的生成,頁面的內(nèi)容和顯示效果除非修改頁面代碼否則基本上不會發(fā)生變化了。靜態(tài)網(wǎng)頁由于沒有數(shù)據(jù)庫支撐而當有大量信息時工作量變大,但是隨著計算機和互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,用戶瀏覽由被動的接受網(wǎng)頁內(nèi)容變?yōu)榕c網(wǎng)頁的交互。動態(tài)網(wǎng)頁的頁面代碼雖然沒有變,但是顯示的內(nèi)容卻是可以隨著時間、環(huán)境或者數(shù)據(jù)庫操作的結(jié)果而發(fā)生改變,這是一種全新的媒體形式。目前最常用的三種動態(tài)網(wǎng)頁語言是ASP、JSP、PHP。
2 三種動態(tài)網(wǎng)頁制作技術(shù)特點
2.1 ASP技術(shù)特點
ASP是由微軟開發(fā)的動態(tài)網(wǎng)頁技術(shù),具體指應(yīng)用于Web服務(wù)端的開發(fā)環(huán)境,主要使用的是VBScript和JavaScript兩種腳本語言嵌入到HTML中進行服務(wù)端的編程,也可以在安裝腳本引擎的基礎(chǔ)上使用其他的腳本語言?;咎攸c如下:
(1)語言兼容性。ASP可以與任何的ActiveX Scripting語言兼容,除了主要使用的兩種語言以外,還能通過plug in的方式使用第三方提供 的如Perl這樣的腳本語言。(2)語言編輯簡單。不需要使用專門的程序編輯器,可直接使用普通的文本編輯器,如Windows自帶的記事本。并無需進行Compile編譯,可以在服務(wù)端直接執(zhí)行,更方便了程序編寫。還可以使用服務(wù)器段的腳本去生成客戶端的腳本。(3)瀏覽器無限制性。用戶在客戶端僅需要打開可以執(zhí)行HTML代碼的瀏覽器,即可以瀏覽ASP設(shè)計的網(wǎng)頁內(nèi)容。
2.2 PHP技術(shù)特點
(1)數(shù)據(jù)庫連接。PHP可以通過ODBC對Apache Server、MySQL、Sybase、Oracle等各種數(shù)據(jù)庫進行訪問,且提供與這些數(shù)據(jù)庫相互連接到的函數(shù)。上述數(shù)據(jù)庫中與MySQL是最佳的組合。(2)開放免費性。PHP的源代碼是完全開放的,且PHP可以從官方網(wǎng)站上自由下載,且與其配合使用的各種數(shù)據(jù)庫也是免費下載的。(3)跨平臺性。PHP可以在Windows、Unix、Linux等操作系統(tǒng)和IIS及Apache等服務(wù)器上運行,代碼可以重復(fù)利用。PHP中的函數(shù)非常豐富,在實現(xiàn)功能方面無需像ASP引入專門的控件,只需要調(diào)用相應(yīng)功能的函數(shù)即可。(4)面向?qū)ο缶幊獭HP是面向?qū)ο蟮木幊?,因此可以提供類和對象的功能,將代碼中具有相關(guān)聯(lián)性的數(shù)據(jù)和對數(shù)據(jù)的操作放在一起,作為一個相互依存,不可分割的整體來處理,使程序簡單化并更容易維護,且增加了代碼的重復(fù)利用效率。
2.3 JSP技術(shù)特點
(1)基于平臺與服務(wù)器獨立。與PHP一樣,可以在Windows、Linux等平臺執(zhí)行。在NT下的IIS外加一個服務(wù)器也可以支持JSP,廣泛應(yīng)用在各系統(tǒng)的服務(wù)器Apache也能支持JSP。(2)內(nèi)容生成與顯示分離。在JSP技術(shù)的使用過程中,Web頁面的開發(fā)人員可以使用HTML或者XML標識來對頁面進行設(shè)計。這些腳本都在服務(wù)端運行,與ASP類似仍是在服務(wù)端使用JSP引擎解釋生成內(nèi)容并通過HTML的方式發(fā)送到客戶端的瀏覽器,這樣也使JSP具有了高保密性。(3)依賴組件的重用。當執(zhí)行的應(yīng)用程序要求比較復(fù)雜時,大部分的JSP頁面都會依賴于可以重復(fù)使用的組件,開發(fā)人員可以對普通操作的組件進行共享與交換,這樣加快了開發(fā)的過程,且使組件在現(xiàn)有技能與優(yōu)化結(jié)果的基礎(chǔ)上得到平衡。(4)使用標識簡化開發(fā)。JSP內(nèi)部封裝了許多功能,標準的JSP標識可以訪問實例化的JavaBeans組件,設(shè)置或者檢索組件的屬性,下載Applet以及執(zhí)行較難編碼和消耗時間的任務(wù)。除此以外,JSP技術(shù)也可以通過定制表示庫來擴展,第三方的開發(fā)人員可以創(chuàng)建常用功能的標識庫,像使用快捷構(gòu)件一樣用此來執(zhí)行特定的其他功能。JSP技術(shù)還可以被整合到其他的應(yīng)用體系中,支撐企業(yè)級的分布式應(yīng)用和支持復(fù)雜度更好的基于Web的應(yīng)用。
2.4 三種技術(shù)比較
(1)穩(wěn)定性。PHP的穩(wěn)定性要高于ASP,但是都不如傳統(tǒng)的CGI程序,CGI程序直接由操作系統(tǒng)控制,系統(tǒng)的穩(wěn)定性不會受到程序差錯的干擾。JSP的穩(wěn)定性也比較良好。(2)開發(fā)維護時間。PHP與ASP的開發(fā)和維護時間都比較良好,但是JSP的開發(fā)速度比較慢。在與網(wǎng)頁的結(jié)合能力方面,ASP與PHP都比較良好,而JSP無法內(nèi)嵌HTTL語法,會影響開發(fā)效果。(3)安全性。ASP曾經(jīng)發(fā)生過比較嚴重的漏洞,后微軟推出了針對該漏洞的補丁,除此以外ASP使用的組件也會導(dǎo)致系統(tǒng)不安全。PHP在與眾多商業(yè)網(wǎng)站的使用過程中,并沒有出現(xiàn)過安全問題。傳統(tǒng)的CGI程序是由操作系統(tǒng)直接管理的,因此破解難度很高,也具有一定的安全性。(4)擴展性。PHP的擴展性不如ASP的擴展性強,ASP可以通過使用jscript、pelscript或者xsript來使用腳本語言。(5)執(zhí)行性。PHP和早期的ASP都屬于解釋型,執(zhí)行效率較慢,后期ASP除了第一次加載編譯之后的執(zhí)行效率相當快速,JSP與后期的ASP相同也在執(zhí)行效率上有明顯的提高。
3 動態(tài)網(wǎng)頁制作技術(shù)應(yīng)用范圍
由于IIS支持的ASP的開發(fā)商是是Mircosoft,因此只能運行于在Mircosoft的服務(wù)器產(chǎn)品IIS和PWS上。Unix下也有相應(yīng)插件來支撐ASP,但是需要對ASP進行與COM疊加的擴充,Unix下的COM實現(xiàn)也不易。ASP.NET是基于通用語言的編譯運行程序,這種基本庫擁有的消息機制可以讓數(shù)據(jù)接口能夠與ASP.NET進行無縫銜接,其強大的適應(yīng)新使其可以運行在Web應(yīng)用軟件開發(fā)的所有平臺當中。在很大程度上,ASP.NET可以與ASP進行兼容,具有更好的伸縮性和穩(wěn)定性。JSP是屬于Java旗下,因此也具備了Java的優(yōu)勢,可以運行于所有平臺。如果在 NT下IIS要能運行JSP需要增加一個類似JRUN的插件。世界排名第一的Web服務(wù)器Apache己經(jīng)能夠支持JSP。在不同的平臺進行移植的時候,JSP和JavaBean不用再重新編譯,因為Java字節(jié)碼都是標準的與平臺無關(guān)的。PHP可以在Windows、Unix、Linux的Web服務(wù)器上正常的運行,其語法也混合了多種開發(fā)語言,開發(fā)者不僅對其更容易掌握,而且還可以快速高效的編寫動態(tài)頁面。用戶在對平臺進行更換時,可以不用修改PHP代碼。當前的主流的Web服務(wù)器軟件由IIS和Apache組成。常用的開發(fā)組合有如下:
(1)IIS環(huán)境。ASP+ACCESS、ASP+SQL SERVER、ASP.NET+ACCESS、ASP.NET+SQL SERVER。(2)APACHE環(huán)境JSP+ORACLE、JSP+MYSQL、PHP+MYSQL。
4 動態(tài)網(wǎng)頁制作技術(shù)應(yīng)用前景
目前在國內(nèi)應(yīng)用最為廣泛的是PHP與ASP。PHP本身存在的缺陷使其不適合在大型的電子商務(wù)網(wǎng)站中使用,而更適合小型的商業(yè)網(wǎng)站,JSP作為一種比較新興的技術(shù),在國內(nèi)使用的比較少,但是在國外,JSP己經(jīng)是比較流行的一種技術(shù),尤其是電子商務(wù)類的網(wǎng)站。JSP基于平臺和服務(wù)器的獨立性以及可擴展性可以使JSP對Web數(shù)據(jù)庫的應(yīng)用當中更具有競爭力。PHP缺乏規(guī)模、多結(jié)構(gòu)以及分布計算的支持,而且對除MYSQL以外的數(shù)據(jù)庫接口不統(tǒng)一,導(dǎo)致其無法很好地使用在商務(wù)網(wǎng)站中。但是在對體系進行完善之后,PHP與java也實現(xiàn)了連接,使其也可以在企業(yè)級的市場中被應(yīng)用,可以在某一些方面取代JSP。ASP和JSP則不存在以上問題,ASP可以通過COM/DCOM獲得ActiveX規(guī)模支持,通過DOOM和Transcation Server獲得結(jié)構(gòu)支持。JSP可以通過Java Class和EJB獲得規(guī)模支持,通過EJB或者CORBA獲得結(jié)構(gòu)支持。三者相比較,JSP應(yīng)該是未來發(fā)展的趨勢。當前國外一些大型的電子商務(wù)解決方案提供商都采用JSP/Servlet 。
5 結(jié)語
Web后端的開發(fā)語言當中,在對ASP、PHP和JSP三種技術(shù)進行比較以后,都各有優(yōu)勢。由于JSP采用的Java語言使其的優(yōu)勢更大。但是效率高于開發(fā)方便無法進行權(quán)衡,因此只能根據(jù)網(wǎng)站的需求進行選擇。并且在市場中也需要三種技術(shù)也需要相互共存,并且可以在將來通過Web服務(wù)實現(xiàn)交互操作,用戶可以因此獲取最優(yōu)的解決方案。
參考文獻
[1]徐峰.ASP,PHP和JSP技術(shù)的比較研究[J].電子技術(shù),2001(3):45-46.
[2]余波等.動態(tài)Web應(yīng)用高級開發(fā)指南[M].北京:人民郵電出版社,1999.
[3]邱仲潘,等譯.Active Server Pages3從入門到精通[M].北京:電子工業(yè)出版社,2000.
[4]陸振光,常晉義.電子商務(wù)(第二版)[M].北京:中國電力出版社,2005.
收稿日期:2016-09-14
作者簡介:吳秀娟(1982—),女,河南駐馬店人,研究生,畢業(yè)于吉林師范大學(xué),工程師,研究方向:計算機應(yīng)用。