鍍金池/ 教程/ Java/ JSP教程
JSP教程

JSP教程

Java服務(wù)器頁(yè)面 - Java Server Pages(JSP)是一種可以用于構(gòu)建動(dòng)態(tài)Web應(yīng)用程序,獨(dú)立于平臺(tái)的服務(wù)器端編程技術(shù)。 JSP可以訪問(wèn)整個(gè)Java API系列,包括訪問(wèn)企業(yè)數(shù)據(jù)庫(kù)的JDBC API。本教程將教您如何使用JSP開(kāi)發(fā)簡(jiǎn)單Web應(yīng)用程序。

JSP技術(shù)用于創(chuàng)建Web應(yīng)用程序,就像Servlet技術(shù)一樣。可以認(rèn)為它是servlet的擴(kuò)展,因?yàn)樗峁┝吮萻ervlet更多的功能,如表達(dá)式語(yǔ)言,jstl等。

JSP頁(yè)面由HTML標(biāo)簽和JSP標(biāo)簽組成。JSP頁(yè)面比Servlet更容易維護(hù),因?yàn)槭褂肑SP可以分開(kāi)頁(yè)面的設(shè)計(jì)和邏輯代碼的開(kāi)發(fā)。它提供了一些額外的功能,如表達(dá)式語(yǔ)言,自定義標(biāo)簽等。

JSP是什么?

JavaServer Pages(JSP)是一種用于開(kāi)發(fā)支持動(dòng)態(tài)內(nèi)容的Web頁(yè)面技術(shù)。 這有助于開(kāi)發(fā)人員通過(guò)使用特殊的JSP標(biāo)簽在HTML頁(yè)面中插入Java代碼,它的大部分以<%開(kāi)頭,并以%>結(jié)尾。

JSP組件是一種Java servlet,旨在滿足Java Web應(yīng)用程序的用戶界面的設(shè)計(jì)。 Web開(kāi)發(fā)人員將JSP編寫(xiě)為HTML,XHTML以及XML元素的代碼,并通過(guò)嵌入JSP操作和命令相結(jié)合的文本文件。

使用JSP,可以通過(guò)網(wǎng)頁(yè)表單收集用戶的輸入,從數(shù)據(jù)庫(kù)或其他來(lái)源將數(shù)據(jù)記錄處理,最后通過(guò)動(dòng)態(tài)創(chuàng)建網(wǎng)頁(yè)呈現(xiàn)。

JSP標(biāo)簽可以用于各種目的,例如:從數(shù)據(jù)庫(kù)檢索信息或注冊(cè)用戶信息,訪問(wèn)JavaBeans組件,在頁(yè)面之間傳遞控制以及在請(qǐng)求,頁(yè)面之間共享信息。

為什么要使用JSP?

JSP通常與使用通用網(wǎng)關(guān)接口(CGI)實(shí)現(xiàn)的程序相同。 但是,與CGI相比,JSP提供了幾個(gè)優(yōu)點(diǎn)。

  • 性能明顯更好,因?yàn)镴SP允許在HTML頁(yè)面中嵌入動(dòng)態(tài)元素,而不是在具有單獨(dú)的CGI文件。
  • 在CGI/Perl處理之前,JSP始終被編譯,因?yàn)镃GI/Perl需要服務(wù)器在每次請(qǐng)求頁(yè)面時(shí)加載解釋器和目標(biāo)腳本。
  • JSP構(gòu)建在Java Servlets API之上,所以像Servlets一樣,JSP還可以訪問(wèn)所有強(qiáng)大的企業(yè)級(jí)Java API,包括:JDBC,JNDI,EJB,JAXP等。
  • JSP頁(yè)面可以與處理業(yè)務(wù)邏輯的servlet,Java servlet模板引擎支持的模型結(jié)合使用。

最后,JSP是Java EE的一個(gè)組成部分,它是企業(yè)級(jí)應(yīng)用程序的完整平臺(tái)。這意味著JSP可以在最復(fù)雜和最苛刻的應(yīng)用中發(fā)揮最大的作用。

JSP的優(yōu)點(diǎn)

下表列出了使用JSP優(yōu)于其他技術(shù)的其他優(yōu)勢(shì) -

與ASP相比

JSP的優(yōu)點(diǎn)是雙重的。首先,動(dòng)態(tài)部分是用Java編寫(xiě)的,而不是Visual Basic或其他MS特定語(yǔ)言,所以它更強(qiáng)大,更易于使用。 其次,它可以移植到其他操作系統(tǒng)和非Microsoft Web服務(wù)器。

與純Servlets

編寫(xiě)和修改常規(guī)HTML比編寫(xiě)HTML的println語(yǔ)句輸出更方便。

與服務(wù)器端包含(SSI)

SSI實(shí)際上只是用于簡(jiǎn)單的包含,而不是用于使用表單數(shù)據(jù),進(jìn)行數(shù)據(jù)庫(kù)連接等的“真實(shí)”程序。

與JavaScript相比

JavaScript可以在客戶端上動(dòng)態(tài)生成HTML,但很難與Web服務(wù)器進(jìn)行交互,以執(zhí)行復(fù)雜的任務(wù),如數(shù)據(jù)庫(kù)訪問(wèn)和圖像處理等。

與靜態(tài)HTML

常規(guī)HTML當(dāng)然不能包含動(dòng)態(tài)信息。

讀者

本教程是專為JSP初學(xué)者而準(zhǔn)備的,通過(guò)簡(jiǎn)單的步驟幫助他們來(lái)了解和學(xué)習(xí)JSP基礎(chǔ)知識(shí)。 完成本教程的學(xué)習(xí)后,您將發(fā)現(xiàn)自己在JSP編程方面具有一定的專業(yè)知識(shí)水平,進(jìn)而能更容易地學(xué)習(xí)JSP編程中更深層次的技術(shù)和知識(shí)。

前提條件

JSP編程類基于Java編程,所以如果你知道或熟悉Java語(yǔ)法,那么將很容易學(xué)習(xí)JSP。 此外,如果您沒(méi)有Java專業(yè)知識(shí),但如果您有其它任何其他編程語(yǔ)言(如C語(yǔ)言,C++或Python)的基礎(chǔ),那么也將有助于快速掌握J(rèn)SP編程技術(shù)。

學(xué)習(xí)JSP之前,最好對(duì)以下技術(shù)有所了解:

問(wèn)題反饋

我們不能保證您在學(xué)習(xí)此JSP教程的過(guò)程中不會(huì)遇到任何問(wèn)題。本教程中的講解,示例和代碼等只是根據(jù)作者的理解來(lái)概括寫(xiě)出。由于作者水平和能力有限,因此不保正所有編寫(xiě)的文章都準(zhǔn)確無(wú)誤。但是如果有遇到任何錯(cuò)誤或問(wèn)題,請(qǐng)反饋給我們,我們會(huì)及時(shí)糾正以方便后續(xù)讀者閱讀。