詳解JSP技術(shù)的方法
JSP技術(shù)的方法
為了快速方便地進(jìn)行動(dòng)態(tài)網(wǎng)站的開發(fā),JSP在以下幾個(gè)方面做了改進(jìn),使其成為快速建立跨平臺(tái)的動(dòng)態(tài)網(wǎng)站的首選方案。
1.將內(nèi)容的生成和顯示進(jìn)行分離
用JSP技術(shù),Web頁面開發(fā)人員可以使用HTML或者XML標(biāo)識來設(shè)計(jì)和格式化最終頁面,并使用JSP標(biāo)識或者小腳本來生成頁面上的動(dòng)態(tài)內(nèi)容(內(nèi)容是根據(jù)請求變化的,例如請求賬戶信息或者特定的一瓶酒的價(jià)格等)。生成內(nèi)容的邏輯被封裝在標(biāo)識和 JavaBeans組件中,并且捆綁在腳本中,所有的腳本在服務(wù)器端運(yùn)行。由于核心邏輯被封裝在標(biāo)識和JavaBeans中,所以Web管理人員和頁面設(shè)計(jì)者,能夠編輯和使用JSP頁面,而不影響內(nèi)容的生成。
在服務(wù)器端,JSP引擎解釋JSP標(biāo)識和腳本,生成所請求的內(nèi)容(例如,通過訪問JavaBeans組件,使用JDBC技術(shù)訪問數(shù)據(jù)庫或者包含文件),并且將結(jié)果以HTML(或者XML)頁面的形式發(fā)送回瀏覽器。這既有助于作者保護(hù)自己的代碼,又能保證任何基于HTML的Web瀏覽器的完全可用性。
2.可重用組件
絕大多數(shù)JSP頁面依賴于可重用的、跨平臺(tái)的組件(JavaBeans或者Enterprise JavaBeans組件)來執(zhí)行應(yīng)用程序所要求的復(fù)雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,或者使得這些組件為更多的使用者和客戶團(tuán)體所使用。基于組件的方法加速了總體開發(fā)過程,并且使得各種組織在他們現(xiàn)有的技能和優(yōu)化結(jié)果的開發(fā)努力中得到平衡。
3.采用標(biāo)識
Web頁面開發(fā)人員不會(huì)都是熟悉腳本語言的編程人員。JSP技術(shù)封裝了許多功能,這些功能是在易用的、與JSP相關(guān)的XML標(biāo)識中進(jìn)行動(dòng)態(tài)內(nèi)容生成所需要的。標(biāo)準(zhǔn)的JSP標(biāo)識能夠訪問和實(shí)例化JavaBeans組件,設(shè)置或者檢索組件屬性,下載Applet,以及執(zhí)行用其他方法更難于編碼和耗時(shí)的功能。
4.適應(yīng)平臺(tái)
幾乎所有平臺(tái)都支持Java,JSP+JavaBeans幾乎可以在所有平臺(tái)下通行無阻。從一個(gè)平臺(tái)移植到另外一個(gè)平臺(tái),JSP和JavaBeans甚至不用重新編譯,因?yàn)镴ava字節(jié)碼都是標(biāo)準(zhǔn)的與平臺(tái)無關(guān)的。
5.數(shù)據(jù)庫連接
Java中連接數(shù)據(jù)庫的技術(shù)是JDBC,Java程序通過JDBC驅(qū)動(dòng)程序與數(shù)據(jù)庫相連,執(zhí)行查詢、提取數(shù)據(jù)等操作。Sun公司還開發(fā)了 JDBC-ODBC bridge,利用此技術(shù)Java程序可以訪問帶有ODBC驅(qū)動(dòng)程序的數(shù)據(jù)庫,目前大多數(shù)數(shù)據(jù)庫系統(tǒng)都帶有ODBC驅(qū)動(dòng)程序,所以Java程序能訪問諸如Oracle、Sybase、MS SQL Server和MS Access等數(shù)據(jù)庫。
此外,通過開發(fā)標(biāo)識庫,JSP技術(shù)可以進(jìn)一步擴(kuò)展。第三方開發(fā)人員和其他人員可以為常用功能創(chuàng)建自己的標(biāo)識庫。這使得Web頁面開發(fā)人員能夠使用熟悉的工具和如同標(biāo)識一樣的執(zhí)行特定功能的構(gòu)件來進(jìn)行工作。
JSP技術(shù)很容易整合到多種應(yīng)用體系結(jié)構(gòu)中,以利用現(xiàn)存的工具和技巧,并且能擴(kuò)展到支持企業(yè)級的分布式應(yīng)用中。作為采用Java技術(shù)家族的一部分,以及Java 2(企業(yè)版體系結(jié)構(gòu))的一個(gè)組成部分,JSP技術(shù)能夠支持高度復(fù)雜的基于Web的應(yīng)用。 由于JSP頁面的內(nèi)置腳本語言是基于Java的,而且所有的JSP頁面都被編譯成為Java Servlets,所以JSP頁面具有Java技術(shù)的所有好處,包括健壯的存儲(chǔ)管理和安全性。作為Java平臺(tái)的一部分,JSP擁有Java編程語言“一次編寫,各處運(yùn)行”的特點(diǎn)。
JSP的應(yīng)用模型
利用JSP技術(shù),動(dòng)態(tài)信息由JSP頁面來表現(xiàn),JSP頁面由安裝在Web服務(wù)器或者使用JSP的應(yīng)用服務(wù)器上的JSP引擎執(zhí)行。JSP引擎接受客戶端對JSP頁面的請求,并且生成JSP頁面作為對客戶端的響應(yīng)。
JSP頁面通常被編譯成為Java Servlets,這是一個(gè)標(biāo)準(zhǔn)的Java擴(kuò)展。頁面開發(fā)人員能夠訪問全部的Java應(yīng)用環(huán)境,以利用Java技術(shù)的擴(kuò)展性和可移植性。當(dāng)JSP頁面第一次被調(diào)用時(shí),如果它還不存在,就會(huì)被編譯成為一個(gè)Java Servlets類,并且存儲(chǔ)在服務(wù)器的內(nèi)存中。這就使得在接下來的對該頁面的調(diào)用中,服務(wù)器會(huì)有非??斓捻憫?yīng)(這避免了CGI-BIN為每個(gè)HTTP請求生成一個(gè)新的進(jìn)程的問題)。
JSP頁面可以包含在多種不同的應(yīng)用體系結(jié)構(gòu)或者模型中,可以用于由不同協(xié)議、組件和格式所組成的聯(lián)合體中?;贘SP的動(dòng)態(tài)信息發(fā)布技術(shù)是一個(gè)開放的、可擴(kuò)展的建立動(dòng)態(tài)Web頁面的標(biāo)準(zhǔn)。不論采用什么創(chuàng)建工具,開發(fā)人員都可以使用JSP頁面來創(chuàng)建可移植的Web應(yīng)用,在不同的Web應(yīng)用服務(wù)器上運(yùn)行。
【編輯推薦】