嚴馳
摘 要 當前,常用的三種動態網頁語言有ASP、PHP、JSP,本文簡要概述了此三種語言的特點,主要從開發環境、開發語言、數據庫操作技術和運行環境這幾個方面對這三種語言進行比較、分析。
關鍵詞 動態網頁技術 ASP JSP PHP
互聯網已經成為了人們生活中不可缺少的一部分,各種網站的出現更是在潛移默化之中改變著人們的生活方式。動態網站優秀的交互功能,使得現實生活中的許多活動都可以在網上完成。
動態網頁是指能夠根據用戶的不同操作情況做出不同的響應。包含兩類:一是,在客戶端實現,稱為DHTML(動態HTML),使用的技術主要是HTML+腳本語言+瀏覽器對象;二是,在服務器端實現,實現的是服務器與瀏覽器之間交互,可使用的技術有JSP、ASP、PHP等。這兩類動態網頁相對傳統的靜態網頁,都具備交互性、自動更新性以及因人而變的靈活性。本文主要對第二類動態網頁涉及到的技術進行比較分析。
1三種語言簡介
1.1 ASP技術
ASP為動態服務器網頁(Active Server page)的簡稱,是微軟推出的WEB服務器端的開發環境。ASP更精確的說是一個中間件,這個中間件將web上的請求轉入到一個解釋器中,在這個解釋器中將所有ASP的Script進行分析,在進行執行。具有簡單易學,安裝方便,效率高,且開發工具強大而多樣的特點。
1.2 PHP技術
PHP(hypertext preprocessor)為超文本預處理器,是一種HTML內嵌式的語言,是用于創建動態WEB頁面的服務器端腳本語言,在語法上混合了C、Java、Perl以及PHP自創新的語法。PHP將程序嵌入到HTML文檔中去執行,執行效率比完全生成HTML標記的CGI要高許多。PHP提供了標準的數據庫接口,數據庫連接方便,兼容性強,擴展性強,可以進行面向對象編程。
1.3 JSP技術
JSP技術是美國sun公司與多家企業合作,構建的網頁動態化設計技術標準。一個JSP文件主要HTML標記、JSP標簽和JSP腳本組成。HTML代碼負責頁面的顯示部分,后兩者負責生成頁面上的動態內容,使得內容的生成與顯示分離。JSP具備了Java技術的簡單易用,完全的面向對象,具有平臺無關性且安全可靠,主要面向Internet的所有特點。
2對比分析
2.1開發環境
ASP動態網頁設計流程簡單,使用windows系統自帶的文本編輯器就可以完成設計,且無需負責編譯直接通過瀏覽器就能運行。對初學者可以選擇微軟Dreamweaver,該軟件集成了文本編輯、數據庫連接、頁面預覽等功能,并提供了大量向導,供開發人員使用。
JSP由于支持的廠商很多,所以開發工具也很多。常用開發工具有Jbuilder與Eclipse等,其中Eclipse屬于開放源代碼,具有較好的可擴展性,設計者可以自行編寫代碼插件。但無論選擇哪種開發工具,JSP開發過程都比ASP復雜的多。
PHP由于具備開源的特點,常用的開發工具也很多。微軟的Dreamweaver也支持PHP的開發,但大多數從業者選擇Zend S tudio 進行調試,由于該軟件不如Dreamweaver人性化,因此PHP的開發也并不比ASP容易。
2.2開發語言
ASP采用vbscipt和javascript兩種腳本語言作為嵌入在HTML中的服務器端編程語言。當客戶端請求網頁時,ASP文件先由服務器端解釋執行,在將執行結果以HTML形式返回到客戶端瀏覽器顯示。
JSP是基于Java技術的,可以使用Java語言來編寫類XML的JSP標記和Java程序段來封裝產生動態網頁的處理邏輯,再在傳統的HTML網頁文件中插入Java程序段和JSP標記。
PHP本身就是一種服務器端腳本語言,用戶可以混合使用PHP和HTML編寫WEB頁面,當訪問者瀏覽到該頁面時,服務器端PHP語言引擎會首先對頁面中的PHP命令進行處理,然后把處理后的結果連同HTML內容一起返回給訪問端的瀏覽器。
2.3數據庫操作技術
ASP常用的數據庫是Access和SQL,在連接數據庫時,一般使用ODBC通過ADO進行連接,連接方式比較單一。
JSP可以支持更多的數據如Oracle、SvBase、AqlServer和Access等數據庫。在訪問數據庫時使用JDBC來實現。如果一個數據庫只有ODBC,JSP也可以進行訪問,只需要利用Java提供的JDBC-ODBC橋進行轉換就可以了。
PHP在連接數據庫方面要優于ASP和JSP,有十分強大的數據庫操作功能。目前應用較廣泛的是PHP與MYSQL的組合。但是PHP在連接數據庫時,其提供的數據庫接口支持相互不統一,這樣在多數據庫調用時會出現一定的困難。
2.4運行環境與平臺
微軟的產品都不具備跨平臺性,ASP也繼承了這一特點。其web服務器需利用微軟的IIS服務器,因此只能運行在微軟的服務器產品上,其他服務器上運行就比較困難。
而JSP作為Java家族的一員,具有“一次編寫,隨處可用”的特點,這使得JSP的運行平臺非常廣泛。且JSP得到Apache服務器的支持,而該服務器可以在多種操作系統上運行,因此JSP也能應用在多種操作系統上。
PHP也具有良好的跨平臺性,易移植。IIS和Apache服務器都支持PHP運行。因此PHP也可以廣泛的運行在各種操作系統上。
綜上所述,在跨平臺性上,PHP要優于ASP,但在可移植性上,PHP不如JSP。
3總結
常見的動態網頁技術各有自己的優缺點和適用范圍,沒有效率既高、開發又方便的選擇,只是一個權衡的問題。技術人員應根據情況而定,選擇合適的,效率高的技術進行開發。