熱比亞·哈斯木
摘要 本文簡要概述了asp.net技術與jsp技術的產(chǎn)生背景以及特點,最后,對比分析了二者的異同之處。
關鍵詞asp.net;Jsp;Web開發(fā)技術;對比分析
中圖分類號TP3
文獻標識碼A
文章編號1674-6708(2016)156-0093-02
現(xiàn)階段,我國Web的主流開發(fā)技術有兩個,分別為aps.net技術、jsp技術。其中,asp.net技術具有編程容易、功能強大的優(yōu)勢;jsp技術具有安全性能顯著以及跨平臺性能良好的特點。
1 產(chǎn)生背景
1.1
asp.net技術
技術而言,asp.net便是不簡單的升級產(chǎn)物,而是一種網(wǎng)頁動態(tài)化的實現(xiàn)系統(tǒng)。應用asp.net技術,可以幫助Web服務器構建相關應用程度,就某種程度來說,asp.net是.NET結構的重要構成部分,是.NET與asp有機結合的產(chǎn)物。Asp.net技術支持事件驅(qū)動以及組件的編程網(wǎng)路表單,在很大程度上簡化了編程。
1.2 jsp技術
美國Sun公司在上世紀末期推出了全新的Java技術,該技術作為一種面向互聯(lián)網(wǎng)開發(fā)的應用工具,具有良好的跨平臺性能以及簡單優(yōu)勢,完全面向?qū)ο?。而隨后,Sun公司與多家企業(yè)合作,構建了jsp技術,該技術屬于網(wǎng)頁動態(tài)化設計技術標準,并于1999年9月,推出了jspl.0規(guī)范。Jsp頁面主要有兩個組分:其一,Java代碼;其二,HTML代碼。服務器在接受客戶端請求后,會處理HTML代碼與Java代碼,然后將最終的HTML頁面?zhèn)鹘o客戶端瀏覽器。
2 技術特點
2.1 asp.net技術
首先,asp.net并不是在asp基礎上簡單升級,其有機結合了.NET,全新技術架構在很大程度上簡化了編程。其次,asp.net運行環(huán)境也并不是在asp基礎上的簡單變化,而是引入了全新的受控代碼概念,可以貫穿視窗的整體發(fā)展平臺。受控代碼在NGWS Runtime下運行,作為時間運行環(huán)境,NGWS Runtime可以對代碼執(zhí)行進行有效管理,簡化了程度設計。再次,Web Controls在很大程度上簡化了HTML controls工作以及forms創(chuàng)建,且支持事件驅(qū)動代碼、客戶端控件以及服務器控件。又次,支持多種語言,Visual Basic.NET為其缺省語言,由此可見,asp.net并不會受到VBScript的語言約束,編譯后運行代碼,且支持C#語言。又次,可以更好的控制代碼。asp技術應用過程中,需要在服務器上對COM對象進行有效注冊,asp.net技術則不存在這種問題。最后,asp.net技術有機融合了asp技術與jsp技術,不僅可以實現(xiàn)邏輯驅(qū)動代碼與顯示代碼分離,還可以促使二者有效聚合。
2.2 jsp技術
其一,編寫一次,便可以實現(xiàn)多方面運行。其二,系統(tǒng)實現(xiàn)多平臺支持。該技術的開發(fā)環(huán)境要求較低,適用于所有平臺,可以將系統(tǒng)部署于任意環(huán)境中,并對其進行有效擴展。Windows、Linux以及UNIX系統(tǒng)環(huán)境中,均可以支持Apache。其三,具有非常顯著的可伸縮性。Servlet/jsp既可以支持小型Jar文件運行,也支持多臺服務器負載以及集群均衡、多臺Application事務處理。其四,支持功能強大以及多樣化的開發(fā)工具。Java具有多種開發(fā)工具,例如,NeatBean、JBuilder以及Eclipse等。其五,可以有效分離顯示以及生成內(nèi)容。應用jsp,可以通過xml,或是html標識對最終頁面進行格式化與設計處理,將小腳本,或是jsp標識生成頁面的動態(tài)化內(nèi)容,以JavaB eans,或是標識封裝生成內(nèi)容邏輯,并與小腳本進行捆綁,促使其實現(xiàn)服務器端運行。開發(fā)方式有四種,分別為J2EE、Servlet+JavaBean s+Jsp、JavaB eans+Jsp、Jsp。
3 對比分析
3.1 共同之處
3.1.1 分離邏輯代碼與頁面顯示
Asp.net技術以.aspx文件存在頁面顯示,.aspx.cs文件實現(xiàn)頁面邏輯功能。.NET中,html代碼與頁面顯示同為分離狀態(tài),以設計視圖完成頁面顯示,以源視圖生成html代碼。用戶可以通過設計視圖隨意拖曳工具箱control空間,此時源視圖便會自動生成相對的html代碼。.net以.aspx.cs實現(xiàn)編程語言。
Jsp技術以xml,或是html標識頁面顯示,以小腳本,或是jsp標識實現(xiàn)頁面動態(tài)內(nèi)容,以JavaBeans,或是標識封裝生成內(nèi)容邏輯,并與小腳本進行捆綁,實現(xiàn)服務器端運行,致使最終的頁面顯示與邏輯代碼呈現(xiàn)為分離狀態(tài)。
3.1.2 具有較高的編譯后執(zhí)行率
Asp.net技術在初次執(zhí)行過程中,將會被編譯為可執(zhí)行性程序集,后期執(zhí)行過程中,可以執(zhí)行該程序集。Jsp頁面初次受訪過程中,將會通過Jvm與jsp引擎轉(zhuǎn)換為Servlet類,隨后受訪過程中,可以直接對Servlet類進行處理。二者均為編譯后執(zhí)行,具有非常高的執(zhí)行效率。
3.2 異同之處
3.2.1 開發(fā)環(huán)境
Asp.net的開發(fā)環(huán)境為.NET IDE,框架含有設計器以及工具箱。通過.NET的所見即所得編輯方式,設計者可以將各種控件隨意拖放、自動部署,而且還支持MSDN幫助文檔。
Jsp的開發(fā)工具有JBuilder與Eclipse等,其中Eclipse屬于開放源代碼,具有較好的可擴展性,設計者可以自行編寫代碼插件。JBuilder在程序開發(fā)方面具有非常顯著的簡便性,促使團隊合作開發(fā)更加簡單。
3.2.2
Web服務器
Asp.net以Microsoft的IIS為Web服務器;而jsp具有多種Web服務器,例如,WebSphere、WebLogic以及Tomcat等。
3.2.3 數(shù)據(jù)庫操作技術
數(shù)據(jù)庫以及數(shù)據(jù)庫操作是動態(tài)網(wǎng)頁技術的主要支持,asp.net的數(shù)據(jù)庫操作技術為ADO.net,jsp的數(shù)據(jù)庫操作技術為JDBC,或是JDBC-ODBC橋。
3.2.4 編程語言
Asp.net作為應用程序框架,以CLR為基礎,由于.NET的構建目的便是促使多種語言實現(xiàn)共享.因此,asp.net支持多種語言編程開發(fā),例如,Jscript、J#Net、VB.net以及C#等。Jsp技術的編程語言只有一個,即Java語言。
3.2.5 運行環(huán)境與平臺
Asp.net以Micorosoft的Windows系統(tǒng)作為運行平臺,而且只有在裝置.net Framework后,才能運行相關應用程序。
Jsp具有多個運行平臺,例如,Windows、unix以及l(fā)inux等,同樣,只有在裝置JDK虛擬機后,才能運行相關應用程序。
4 結論
在Web開發(fā)過程中,所選擇的開發(fā)工具至關重要。隨著科學技術的快速發(fā)展,先進可用性Web開發(fā)工具越來越多,開發(fā)人員只有充分掌握各項開發(fā)工具的一般性資料,才能保證所選擇的開發(fā)工具符合Web開發(fā)的實際需求,提高Web開發(fā)的整體質(zhì)量。