張舜堯
(廈門軟件職業(yè)技術(shù)學(xué)院 福建 廈門 361024)
JSP(Java Server Page)作為當(dāng)今主流動態(tài)網(wǎng)頁設(shè)計平臺之一,是由SUN 公司發(fā)起的并聯(lián)合多家公司共同創(chuàng)立的一種動態(tài)網(wǎng)頁設(shè)計技術(shù)標(biāo)準(zhǔn)。JSP 的基礎(chǔ)是Java 技術(shù),因?yàn)槠溥\(yùn)行于虛擬機(jī)之上,所以一般用來設(shè)計多平臺和跨服務(wù)器的動態(tài)頁面。 JSP 的執(zhí)行方式和常見的VBSeript 和JavaScript 有所不同,它的執(zhí)行是完全在服務(wù)器端的,而其他的腳本語言執(zhí)行中,一部分是在瀏覽器上執(zhí)行的。 在靜態(tài)HTML 頁面內(nèi)加入Java 腳本片斷和標(biāo)記(tag)就構(gòu)成了JSP 頁面。 當(dāng)服務(wù)器收到訪問JSP 頁面的請求時,先執(zhí)行其的java 程序段,之后將執(zhí)行的結(jié)果以HTML 頁面的形式展現(xiàn)在瀏覽器端。
隨著Java Server 的發(fā)展和JSP 的日趨成熟, 應(yīng)用Java 語言進(jìn)行Web 開發(fā)的技術(shù)逐漸嶄露頭角。 從本質(zhì)上來講JSP 就是Java 程序的延伸,是一種特殊應(yīng)用的Java 語句段,在此基礎(chǔ)上加入了一個HTTP Server 這個類的引擎, 使得某些對象能夠自動的初始化方便用戶使用, 用戶從而不用再去花費(fèi)大量的時間進(jìn)行前期準(zhǔn)備的工作。 現(xiàn)將JSP 具有的優(yōu)點(diǎn)列舉如下:
(1)JSP 采用的腳本語言Java 具有是分布式的、面向?qū)ο蟮?、解釋運(yùn)行等特點(diǎn);
(2)JSP 采用的腳本語言Java 去掉了直接處理地址的指針等概念,引入了類和對象等概念;
(3)JSP 采用Servet(服務(wù)器端程序)實(shí)現(xiàn)了服務(wù)器資源的目的;
(4)Java Beans 的語法和java 非常接近,便于使用;
(5)Java 中JDBC 的數(shù)據(jù)庫連接技術(shù)已非常成熟;
(6)JSP 對XML 也有著非常廣泛的支持。
當(dāng)然,在使用的過程中,JSP 同樣也存在以下缺點(diǎn):
(1)Java 的跨平臺的功能,使得產(chǎn)品具有很好的伸縮能力的同時,也大大增加了開發(fā)相關(guān)產(chǎn)品的復(fù)雜度;
(2)Java 程序的執(zhí)行是通過常駐內(nèi)存來完成的, 這樣一來使得內(nèi)存的使用率大大降低,在多個用戶多道任務(wù)同時執(zhí)行的時候會造成內(nèi)存使用率低的問題;
(3)系統(tǒng)的資料較為匱乏。
當(dāng)今主流的web 開發(fā)技術(shù)之一ASP 技術(shù), 是由微軟公司開發(fā)的面向服務(wù)器端的腳本技術(shù), 主要用來創(chuàng)建具有動態(tài)的、 交互能力的web 腳本程序。 IIS 對其有強(qiáng)大的支持, 除此之外PWS 和Peer WebServer 等也可以運(yùn)行ASP。 使用ASP 技術(shù)可以把HTML 基本頁面、web 腳本語言、ActiveX 組件和ASP 內(nèi)在對象有機(jī)的結(jié)合起來,這樣一來所建立的網(wǎng)頁既是動態(tài)的、可交互的,又是比較高效的。
從ASP(ActiveX Server Page)面世以來,已經(jīng)成為開發(fā)人群中使用最廣的一項(xiàng)技術(shù)。 新型的ASP.NET 是一個比較完美的設(shè)想, 但因?yàn)镸icrosoft 公司的平臺移植性等問題,因此在某些方面使得它局限在了一個較小的框架里,假設(shè)它能夠突破這個瓶頸,它的將來將無可比擬。
Microsoft 公司提供了非常大量的服務(wù)器端ActiveX 組件, 其中有一部分是IIS 集成的,其中包括訪問數(shù)據(jù)庫所用到的ADO 技術(shù)。 ASP技術(shù)擁有以下幾個優(yōu)點(diǎn):
(1)易于掌握:ASP 的開發(fā)基礎(chǔ)是所有web 中技術(shù)最全面的。 一來,是Microsoft 的聯(lián)機(jī)手冊有著強(qiáng)大的技術(shù)支持, 還有本地化的語言幫助系統(tǒng),二來,是具有非??焖俪霈F(xiàn)的教學(xué)資料,這樣一來大大方便了開發(fā)人員對技術(shù)的學(xué)習(xí)和研究。
(2)易于安裝,操作方便:ASP 的使用基礎(chǔ)是裝好一個Windows 操作系統(tǒng),再安裝一個IIS 就可以立即使用,不存在復(fù)雜的配置。 同時對ASP 的調(diào)試也非常容易掌握。
(3)開發(fā)工具多種多樣:基于Microsoft 公司的強(qiáng)大平臺,憑借其在商業(yè)上的成功和很好的商業(yè)運(yùn)作, 為ASP 的開發(fā)提供了非常有利的工具支持,如Visual InterDev/Front Page/Home Site 等,這都為ASP的開發(fā)提供了多種工具。
(4)執(zhí)行效率高:使用ASP 技術(shù)的頁面在較低的訪問量情況下,能夠具有較高的速度,而且本身對機(jī)器的要求也不高,總的來說執(zhí)行的效率較好。
縱然ASP 技術(shù)有著那么多優(yōu)點(diǎn),但通過實(shí)際的應(yīng)用,我們也發(fā)現(xiàn)了它的一些不足,主要體現(xiàn)在以下幾個方面:
(1)Windows 平臺的全部問題都會一如既往的累加到它的身上。其安全性、穩(wěn)定性、跨平臺性等都會因此與NT 內(nèi)核的捆綁而凸顯。
(2)ASP 技術(shù)由ActiveX 組件的支持所以它變得非常強(qiáng)大, 但由此也帶來了較為嚴(yán)重的安全問題。 在組件的使用和操作中不加以規(guī)范,就很容易受到病毒等攻擊而導(dǎo)致整個站點(diǎn)癱瘓。
(3)ASP 技術(shù)除非使用大量使用組件之外, 沒有其他辦法提高站點(diǎn)工作效率。 這樣一來就會產(chǎn)生即時編輯上的時間問題。
(4)使用ASP 技術(shù)的頁面無法實(shí)現(xiàn)跨平臺的應(yīng)用,特別是在當(dāng)今多種多樣操作系統(tǒng)流行的時代, 這點(diǎn)顯得尤為突出。 雖然這也是Microsoft 能讓ASP 發(fā)揮最佳的能力, 但是正是Windows 的禁錮限制了ASP 的可移植性。
(5)ASP 技術(shù)也沒有辦法完全實(shí)現(xiàn)如完全群集、 負(fù)載均衡等一些企業(yè)級的功能。
最新的ASP.NET 技術(shù)是一種革命性的編程框架技術(shù),ASP.NET技術(shù)使得快速開發(fā)功能強(qiáng)大的Web 應(yīng)用程序和Web 服務(wù)成為可能。它提供了最靈活、最方便的方法來部署,構(gòu)建和運(yùn)行Web 應(yīng)用程序,從而實(shí)現(xiàn)面向多種瀏覽器和設(shè)備。
隨著ASP.NET 技術(shù)的不斷應(yīng)用,其優(yōu)點(diǎn)越發(fā)明顯,ASP.NET 技術(shù)具有靈活的語言選擇方法,并增強(qiáng)了開發(fā)環(huán)境,因此也改善了系統(tǒng)的性能;ASP.NET 技術(shù)能夠靈活地輸出緩存這樣一來使得存儲空間得到較高的利用;ASP.NET 技術(shù)具有國際化特點(diǎn),對移動設(shè)備進(jìn)行支持,具有很好擴(kuò)展性和可用性主要體現(xiàn)在以下幾個方面:
(1)較高的安全性:ASP.NET 技術(shù)為Web 程序提供了默認(rèn)的權(quán)限和身份驗(yàn)證方案。 系統(tǒng)開發(fā)人員可以根據(jù)程序的實(shí)際情況進(jìn)行添加、刪除或修改等操作。
(2)較好的向下兼容性:ASP 技術(shù)和ASP.NET 框架可一起運(yùn)行在IIS 服務(wù)器上;系統(tǒng)不會因?yàn)榘惭b了ASP.NET 而使得原有的ASP 程序崩潰。
(3)ASP.NET 技術(shù)的分布式應(yīng)用程序功能: 即Web 窗體技術(shù)和XML Web 服務(wù)。在相同配置和調(diào)試的基本結(jié)構(gòu)上支持以上兩種功能。
(4)良好的遠(yuǎn)程訪問服務(wù)器功能。 通過XML 的web 服務(wù),使得商家獲得提供其數(shù)據(jù)及商業(yè)規(guī)則的可編輯接口。
對于一個站點(diǎn)或其內(nèi)部的Wcb 應(yīng)用程序而言, 可兼有ASP.NET頁面和ASP 頁面。因?yàn)锳SP 和ASP.NET 都可以訪問相同的Web 服務(wù)器, 這樣一來就并不再需要將原有的ASP 頁面導(dǎo)入到ASP.NET 兼容的頁面中。 不過,Microsoft 公司測試結(jié)果顯示,采用ASP.NET 應(yīng)用程序的處理速度的是采用ASP 技術(shù)的二到三倍。 ASP.NET 的諸多特點(diǎn),如服務(wù)器端控件處理和事件,能夠幫助使用者開發(fā)應(yīng)用程序速度變得更快,編寫的編碼量更少。 這樣一來,可以將ASP.NET 腳本代碼與傳統(tǒng)的HTML 內(nèi)容進(jìn)行分離也變得前所未有的簡單,其在用戶使用舒適度方面可見一斑。
[1]張海林,杜忠友,田學(xué)雷.基于ASP.NET 技術(shù)的安全網(wǎng)站設(shè)計[J],商場現(xiàn)代化,2007(02).