摘要:ASP和JSP是目前兩種常見的網(wǎng)頁制作技術(shù),以前的網(wǎng)頁都是靜態(tài)的,現(xiàn)在由于出現(xiàn)了網(wǎng)頁設(shè)計(jì)相關(guān)的技術(shù),當(dāng)前的網(wǎng)頁都是動(dòng)態(tài)性的。本文主要從動(dòng)態(tài)網(wǎng)頁制作技術(shù)的層面上來分析ASP和JSP之間的不同點(diǎn),哪種制作技術(shù)更好,它們的優(yōu)缺點(diǎn)是什么。
關(guān)鍵詞:ASP;JSP;動(dòng)態(tài)網(wǎng)頁技術(shù);服務(wù)器;對(duì)比
中圖分類號(hào):TP393.092 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9599 (2012) 23-0000-02
1 引言
ASP和JSP都是目前用的比較多的動(dòng)態(tài)網(wǎng)頁開發(fā)技術(shù),一個(gè)來源自微軟公司,一個(gè)來源于SUN公司,都是著名的IT企業(yè)。這兩個(gè)開發(fā)語言都是面向WEB服務(wù)器端的,在瀏覽的時(shí)候不需要加任何的插件,直接就可以進(jìn)行瀏覽。而早期的網(wǎng)頁開發(fā)只是停留在靜態(tài)的層面上,用的是HTML,也就是超文本技術(shù),可能開發(fā)一個(gè)頁面需要非常漫長的時(shí)間,而且開發(fā)工具相對(duì)落后。如今有了高級(jí)的動(dòng)態(tài)技術(shù)以后,開發(fā)的過程變得更加簡單,而且節(jié)省了很多時(shí)間,網(wǎng)頁內(nèi)容也更加豐富,我們?cè)诎l(fā)布資訊,進(jìn)行網(wǎng)上購物等,這些都是新技術(shù)帶給我們的方便。
動(dòng)態(tài)網(wǎng)頁設(shè)計(jì)技術(shù)的原理主要是:首先是通過不同的技術(shù)語言把網(wǎng)頁頁面寫出來,然后存儲(chǔ)在WEB服務(wù)器上,當(dāng)我們普通用戶進(jìn)行訪問的時(shí)候,那么我們?cè)L問的請(qǐng)求就會(huì)發(fā)送到服務(wù)器端,由服務(wù)器來決定我們?cè)L問的是否成功,如果成功,那么就會(huì)調(diào)取我們?cè)L問的頁面,如果不成功,則無法顯示。比如說我們?cè)L問某個(gè)數(shù)據(jù)庫站點(diǎn),在數(shù)據(jù)庫當(dāng)中有很多內(nèi)容和信息,我們調(diào)用了其中一個(gè)信息,那么我們調(diào)用的這個(gè)信息就會(huì)由WEB服務(wù)器去傳送,最后在返回到數(shù)據(jù)庫當(dāng)中,這個(gè)過程都是自動(dòng)完成的,等我們看到真正的頁面出來以后,其實(shí)這個(gè)過程已經(jīng)結(jié)束了。所以動(dòng)態(tài)網(wǎng)頁設(shè)計(jì)相對(duì)于傳統(tǒng)的技術(shù)來說要靈活的多,而且也方便的多,接下來我們就來看看動(dòng)態(tài)設(shè)計(jì)語言ASP和JSP兩者的比較。
2 JSP和ASP的比較
2.1 平臺(tái)不同
首先它們的平臺(tái)是不用,一個(gè)來自微軟公司,一個(gè)來源于SUN公司,ASP一般只能用于微軟服務(wù)器的平臺(tái),局限性比較大,雖然在UNIX下也可以用,但是必須通過和COM的組合來進(jìn)行,這樣相對(duì)就麻煩,而且和COM進(jìn)行組合是很困難的事情。同比之下,JSP就和平臺(tái)沒有什么大的關(guān)聯(lián),可以在任何服務(wù)器和操作系統(tǒng)下進(jìn)行開發(fā)和設(shè)計(jì),所以就方便了很多,也可以說是JSP的一個(gè)非常大的優(yōu)點(diǎn),操作簡單。
2.2 數(shù)據(jù)庫連接不同
ASP 使用 ODBC 通過 ADO( ActiveXData Object) 連接數(shù)據(jù)庫,而JSP 對(duì)數(shù)據(jù)庫的訪問通過 JDBC( Java Data Base Connectivity) 來實(shí)現(xiàn)。JDBC 與 ODBC 都基于 X/open 的 SQL 調(diào)用級(jí)接口, JDBC 的總體結(jié)構(gòu)類似于 ODBC, 也有 4 個(gè)組件: 應(yīng)用程序、驅(qū)動(dòng)程序管理器、驅(qū)動(dòng)程序和數(shù)據(jù)源。JDBC 與 ODBC 都獨(dú)立于特定的數(shù)據(jù)庫。這個(gè)是兩者之間的一個(gè)共同,但是,JDBC除了能有ODBC的功能和特點(diǎn)以外,還可以對(duì)平臺(tái)和操作系統(tǒng)有很好的兼容性。主要是因?yàn)镴DBC是基于JAVA語言來進(jìn)行開發(fā)的,而本身JAVA就是不關(guān)乎平臺(tái)的,相對(duì)于ODBC來說安全性和穩(wěn)定性都要更好,比較適合網(wǎng)絡(luò)上的數(shù)據(jù)庫構(gòu)建。另外還有一個(gè)不同點(diǎn)就是ODBC需要在每臺(tái)電腦上都要進(jìn)行安裝,而JDBC是不要任何驅(qū)動(dòng)的,直接運(yùn)行就可以,而且就算需要可以通過瀏覽器自動(dòng)進(jìn)行安裝,無需我們?nèi)ゲ僮?,相?duì)來說要方便很多。
2.3 程序擴(kuò)展性不同
前面我們提到,ASP可以和COM進(jìn)行組合,但是相對(duì)難度很大,這里面要使用到很多的COM控件,那么在編譯的時(shí)候要花大量的時(shí)間和資源去讀取COM控件,工作效率大大的降低,主要是因?yàn)锳SP用到的腳本語言比較受限制,主要是基于Script 語言,這種語言很多地方已經(jīng)不采用了,相對(duì)比較落后。而JSP是和JavaBean進(jìn)行組合擴(kuò)展的,相對(duì)COM來說要方便很多,COM要進(jìn)行注冊(cè)后才能進(jìn)行使用,而JavaBean是不需要的,哪個(gè)難度更大一比較就知道了,程序的擴(kuò)展性好,那么在進(jìn)行動(dòng)態(tài)網(wǎng)頁開發(fā)的時(shí)候相對(duì)就容易,和服務(wù)器響應(yīng)的時(shí)間就要短,所以相比之下JSP更占優(yōu)勢。
2.4 開發(fā)效率不同
開發(fā)效率一般要根據(jù)開發(fā)環(huán)境來決定,現(xiàn)在有很多的大型網(wǎng)站已經(jīng)減少了ASP的使用頻率,但是中小型的企業(yè)網(wǎng)站還在使用,主要是因?yàn)槭紫華SP上手比較快,容易學(xué)習(xí),維護(hù)起來也方便,腳本語言相對(duì)來說比較容易學(xué)習(xí),而且可以結(jié)合靜態(tài)頁面HTML來進(jìn)行編輯,方便維護(hù)。而JSP它是以JAVA為平臺(tái)的,JAVA很多人覺得比較難,在學(xué)習(xí)上有一定的困難,所以開發(fā)效率相對(duì)比較低,這個(gè)是人們對(duì)這兩種開發(fā)語言的認(rèn)識(shí)。其實(shí),正確使用JSP其實(shí)是現(xiàn)在的一個(gè)趨勢,在開發(fā)方面比較容易管理,提高效率。在維護(hù)方面也比較容易,難度這個(gè)因人而異,好的技術(shù)一定不是那么容易學(xué)習(xí)的,所以,在現(xiàn)在日趨網(wǎng)絡(luò)化的社會(huì),JSP 更適合部署同一時(shí)間用戶數(shù)量較多的大型網(wǎng)站。
2.5 安全性不同
目前的網(wǎng)絡(luò)安全是首當(dāng)其沖的,特別是很多電子商務(wù)類型的網(wǎng)站,網(wǎng)上交易和支付的風(fēng)險(xiǎn)越來越大,所以對(duì)于安全性的要求也越來越高。ASP一般情況下是在服務(wù)器端,我們?nèi)グl(fā)送請(qǐng)求,通過服務(wù)器驗(yàn)證得到返回,雖然可以不通過客戶,但是還是有一些問題:首先是源碼的安全,由于 ASP 程序采用非編譯性語言, 大大降低了程序源代碼的安全性。一旦有人進(jìn)入到代碼中,那么就可以修改整個(gè)網(wǎng)站,甚至可以看到后臺(tái)的用戶信息,這樣來說是非常危險(xiǎn)的。其次是安全問題很容易被忽視,ASP中一般都是使用表單比較多,這些表單沒有經(jīng)過加密處理直接顯示在瀏覽器端,很容易產(chǎn)生不安全。一定要經(jīng)過驗(yàn)證才能進(jìn)入,否則就容易造成安全隱患。
JSP相對(duì)來說比ASP做的就要好一些,主要是因?yàn)樵贘SP中先是交給JAVA虛擬機(jī)來進(jìn)行執(zhí)行,這樣源碼就不容易被黑客侵入,而且JSP中的程序都是放在不對(duì)外的目錄中,這樣安全性就要更高點(diǎn),并且 Java 能通過異常處理機(jī)制來有效防止系統(tǒng)的崩潰。
3 JSP的優(yōu)勢所在
從上面的分析看來我們很明顯的看到JSP要強(qiáng)于ASP,優(yōu)勢非常的明顯,主要是因?yàn)镴SP的技術(shù)存在比較強(qiáng)的優(yōu)勢,我們來總結(jié)一下:
首先是JSP相對(duì)比較獨(dú)立,不需要操作系統(tǒng)或者其他平臺(tái)的支持,能夠在任何服務(wù)器上進(jìn)行運(yùn)行或者可以支持很多開發(fā)商的環(huán)境,比較容易上手和使用。
其實(shí)是JSP比較受開發(fā)人員的青睞,很多程序員比較喜歡用JSP來開發(fā)網(wǎng)站,因?yàn)镴SP的組件用起來非常方便,ASP用的對(duì)象模型COM非常復(fù)雜,很容易出現(xiàn)問題,這樣的情況下自然會(huì)選擇JSP。
最后就是JSP開發(fā)是基于JAVA語言的,是目前最為流行的編程語言,而ASP用的VBScrip 或 Jscrip 語言比較落后,已經(jīng)不能成為主力軍了,JAVA的執(zhí)行力比較強(qiáng),能有效的防止系統(tǒng)問題的產(chǎn)生,安全性要好。
4 總結(jié)
從以上比較可以發(fā)現(xiàn),JSP的優(yōu)點(diǎn)要強(qiáng)于ASP,并且在整個(gè)安全性上也要占據(jù)優(yōu)勢,所以很多大的企業(yè)都采用JSP來進(jìn)行動(dòng)態(tài)網(wǎng)頁開發(fā),但是ASP因?yàn)楹唵我彩艿搅撕芏嗳说南矚g,所以,在使用過程中, 技術(shù)人員應(yīng)該根據(jù)情況而定, 選擇合適的、開發(fā)效率高的技術(shù)進(jìn)行開發(fā)。
參考文獻(xiàn):
[1]苗境芝.動(dòng)態(tài)網(wǎng)頁的制作技巧[J].內(nèi)江科技,2007(10).
[2]朱小川.動(dòng)態(tài)網(wǎng)頁制作技術(shù)[J].中國科技信息,2005(12).
[3]范云芝.動(dòng)態(tài)網(wǎng)頁制作技術(shù)ASP、PHP和JSP比較分析[J].電腦知識(shí)與技術(shù),2005(29).
[4]金立群.嵌入式動(dòng)態(tài)網(wǎng)頁制作技術(shù)ASP,PHP與JSP的比較[J].石家莊職業(yè)技術(shù)學(xué)院學(xué)報(bào),2004(02).
[作者簡介]彭勝偉(1966-),河南信陽,職稱:副高,研究方向:計(jì)算機(jī)應(yīng)用技術(shù)。
計(jì)算機(jī)光盤軟件與應(yīng)用2012年23期