国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

JSP和Java Servlet的技術概述以及比較

2024-09-05 00:19:40
字體:
來源:轉載
供稿:網友

java servlet及其特點

servlet是java技術對cgi編程的回答。servlet程序在服務器端運行,動態地生成web頁面。與傳統的cgi和許多其他類似cgi的技術相比,java servlet具有更高的效率,更容易使用,功能更強大,具有更好的可移植性,更節省投資(更重要的是, servlet程序員收入要比perl程序員高:-):

高效:

在傳統的cgi中,每個請求都要啟動一個新的進程,如果cgi程序本身的執行時間較短,啟動進程所需要的開銷很可能反而超過實際執行時間。而在servlet中,每個請求由一個輕量級的java線程處理(而不是重量級的操作系統進程)。

在傳統cgi中,如果有n個并發的對同一cgi程序的請求,則該cgi程序的代碼在內存中重復裝載了n次;而對于servlet,處理請求的是n個線程,只需要一份servlet類代碼。在性能優化方面,servlet也比cgi有著更多的選擇,比如緩沖以前的計算結果,保持數據庫連接的活動,等等。

方便:

servlet提供了大量的實用工具例程,例如自動地解析和解碼html表單數據、讀取和設置http頭、處理cookie、跟蹤會話狀態等。

功能強大:

在servlet中,許多使用傳統cgi程序很難完成的任務都可以輕松地完成。例如,servlet能夠直接和web服務器交互,而普通的cgi程序不能。servlet還能夠在各個程序之間共享數據,使得數據庫連接池之類的功能很容易實現。

可移植性好:

servlet用java編寫,servlet api具有完善的標準。因此,為i-planet enterprise server寫的servlet無需任何實質上的改動即可移植到apache、microsoft iis或者webstar。幾乎所有的主流服務器都直接或通過插件支持servlet。

節省投資:

不僅有許多廉價甚至免費的web服務器可供個人或小規模網站使用,而且對于現有的服務器,如果它不支持servlet的話,要加上這部分功能也往往是免費的(或只需要極少的投資)。

jsp及其特點

javaserver pages(jsp)是一種實現普通靜態html和動態html混合編碼的技術,有關jsp基礎概念的說明請參見《jsp技術簡介 》。

許多由cgi程序生成的頁面大部分仍舊是靜態html,動態內容只在頁面中有限的幾個部分出現。但是包括servlet在內的大多數cgi技術及其變種,總是通過程序生成整個頁面。jsp使得我們可以分別創建這兩個部分。例如,下面就是一個簡單的jsp頁面:

<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><title>歡迎訪問網上商店</title></head><body><h1>歡迎</h1><small>歡迎,<!-- 首次訪問的用戶名字為"new user" --> <% out.println(utils.getusernamefromcookie(request)); %>要設置帳號信息,請點擊<a href=http://www.blue1000.com/article/"account-settings.html">這里</a></small><p>頁面的其余內容。.</body></html>

下面是jsp和其他類似或相關技術的一個簡單比較:

jsp和active server pages(asp)相比

microsoft的asp是一種和jsp類似的技術。jsp和asp相比具有兩方面的優點。首先,動態部分用java編寫,而不是vb script或其他microsoft語言,不僅功能更強大而且更易于使用。第二,jsp應用可以移植到其他操作系統和非microsoft的web服務器上。

jsp和純servlet相比

jsp并沒有增加任何本質上不能用servlet實現的功能。但是,在jsp中編寫靜態html更加方便,不必再用 println語句來輸出每一行html代碼。更重要的是,借助內容和外觀的分離,頁面制作中不同性質的任務可以方便地分開:比如,由頁面設計專家進行html設計,同時留出供servlet程序員插入動態內容的空間。

jsp和服務器端包含(server-side include,ssi)相比

ssi是一種受到廣泛支持的在靜態html中引入外部代碼的技術。jsp在這方面的支持更為完善,因為它可以用servlet而不是獨立的程序來生成動態內容。另外,ssi實際上只用于簡單的包含,而不是面向那些能夠處理表單數據、訪問數據庫的“真正的”程序。

jsp和javascript相比

javascript能夠在客戶端動態地生成html。雖然javascript很有用,但它只能處理以客戶端環境為基礎的動態信息。除了cookie之外,http狀態和表單提交數據對javascript來說都是不可用的。另外,由于是在客戶端運行,javascript不能訪問服務器端資源,比如數據庫、目錄信息等等。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 建宁县| 漠河县| 偏关县| 大洼县| 泗水县| 从化市| 永丰县| 正定县| 诸城市| 揭阳市| 织金县| 繁峙县| 安塞县| 科尔| 班戈县| 德江县| 盘山县| 巴塘县| 于都县| 克拉玛依市| 通化市| 色达县| 香港 | 凌海市| 镇巴县| 丹东市| 隆子县| 大关县| 洞口县| 伊春市| 密山市| 锡林浩特市| 称多县| 三河市| 灵璧县| 新化县| 临漳县| 彰化市| 安徽省| 福贡县| 化德县|