jsp基礎(chǔ)知識
JSP全名為Java Server Pages,中文名叫java服務(wù)器頁面,其根本是一個簡化的Servlet設(shè)計(jì),它是由Sun Microsystems公司倡導(dǎo)、許多公司參與一起建立的一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。以下是由學(xué)習(xí)啦小編整理關(guān)于jsp知識的內(nèi)容,希望大家喜歡!
JSP發(fā)展歷程
1.2版本
JSP1.2不支持EL,但可以使用外部的JSTL標(biāo)簽以便使用EL。
2.0版本
JSP 2.0的一個主要特點(diǎn)是它支持表達(dá)語言(expression language)。JSTL表達(dá)式語言可以使用標(biāo)記格式方便地訪問JSP的隱含對象和JavaBeans組件,JSTL的核心標(biāo)記提供了流程和循環(huán)控制功能。自制標(biāo)記也有自定義函數(shù)的功能,因此基本上所有scriptlet能實(shí)現(xiàn)的功能都可以由JSTL替代。在JSP 2.0中,建議盡量使用EL而使JSP的格式更一致。
SimpleTag
JSP 2.0中加入了新的創(chuàng)建自制標(biāo)記的API,javax.servlet.jsp.tagext.SimpleTag定義了用來實(shí)現(xiàn)簡單標(biāo)記的接口。和 JSP 1.2中的已有接口不同的是,SimpleTag接口不使用doStartTag和doEndTag方法,而提供了一個簡單的doTag方法。這個方法在調(diào)用該標(biāo)記時只被使用一次。而需要在一個自制標(biāo)記中實(shí)現(xiàn)的所有邏輯過程、循環(huán)和對標(biāo)記體的評估等都在這個方法中實(shí)現(xiàn)。從這個方面來講, SimpleTag和IterationTag可以達(dá)到同等的作用。但SimpleTag的方法和處理周期要簡單得多。在SimpleTag中還有用來設(shè)置JSP內(nèi)容的setJspBody和getJspBody方法。Web容器會使用setJspBody方法定義一個代表JSP內(nèi)容的 JspFragment對象。實(shí)現(xiàn)SimpleTag標(biāo)記的程序可以在doTag方法中根據(jù)需要多次調(diào)用getJspBody.invoke方法以處理JSP內(nèi)容。
重要功能
JSP2.0中的一個主要功能是JSP fragment,它的基本特點(diǎn)是可以使處理JSP的容器推遲評估JSP標(biāo)記屬性。我們知道一般JSP是首先評估JSP標(biāo)記的屬性,然后在處理JSP標(biāo)記時使用這些屬性,而JSP fragment提供了動態(tài)的屬性。也就是說,這些屬性在JSP處理其標(biāo)記體時是可以被改變的。JSP需要將這樣的屬性定義為 javax.servlet.jsp.tagext.JspFragment類型。當(dāng)JSP標(biāo)記設(shè)置成這種形式時,這種標(biāo)記屬性實(shí)際上的處理方法類似于標(biāo)記體。在實(shí)現(xiàn)標(biāo)記的程序中,標(biāo)記屬性可以被反復(fù)評估多次。這種用法稱為JSP fragment。JSP fragment還可以定義在一個SimpleTag處理程序中使用的自制標(biāo)記動作。像前面例子說明的,getJspBody返回一個 JspFragment對象并可以在doTag方法中多次使用。需要注意的是,使用JSP fragment的JSP只能有一般的文本和JSP action,不能有scriptlet和scriptlet表達(dá)式。
JSP語言對比
與servlets的區(qū)別
從架構(gòu)上說,JSP可以被看作是從Servlets高級提煉而作為JAVA Servlet2.1 API的擴(kuò)展而應(yīng)用。Servlets和JSP最早都是由Sun Microsystems(升陽公司)開發(fā)的。從JSP1.2版本以來,JSP處于Java Community Process(有人譯為:JAVA社區(qū)組織)開發(fā)模式下。JSR-53規(guī)定了JSP 1.2和Servlet 2.4的規(guī)范,JSR-152規(guī)定了JSP 2.0的規(guī)范。2006年5月,JSP 2.1的規(guī)范作為Java EE5的一部份,在JSR-245中發(fā)布。
與ASP的比較
JSP(Java Server Page)與ASP(Active Server Page)兩者都是常用的動態(tài)網(wǎng)頁技術(shù),也都是可以嵌入HTML中的程序,但兩者是有著本質(zhì)的不同,主要從以下幾個方面對其進(jìn)行比較:
1.Web服務(wù)器的支持:大多數(shù)通用的 Web服務(wù)器如:Apache、Netscape和Microsoft IIS都支持JSP頁面,只有微軟本身的Microsoft IIS和Personal Web Server可以支持ASP。
2.平臺的支持:JSP具有平臺獨(dú)立性,只要是一般的Java程序可以運(yùn)行的平臺,都支持JSP程序。Windows平臺可以很好的支持ASP,但ASP對于基于Win32逐漸模型的依賴,使得它難于移植到其它平臺上。
3.組件模型:JSP是建立在可重用的、跨平臺的組件(如:JavaBeans、Enterprises JavaBeans和用戶定制的標(biāo)簽庫等組件)之上的,而ASP使用的是基于Win32的COM組件模型。
4.腳本語言:JSP可以使用Java編程語言或JavaScript作為腳本語言,而ASP使用VBScript或Jscript作為腳本語言。
5.安全性:JSP使用Java安全模型,而ASP使用Windows NT的安全結(jié)構(gòu)。
6.與Access數(shù)據(jù)庫的連接:JSP使用JDBC建立與Access數(shù)據(jù)庫的連接,而ASP對Access數(shù)據(jù)庫使用Data Active Objects。
7.用戶定制的標(biāo)簽:JSP可以使用用戶定制標(biāo)簽庫進(jìn)行擴(kuò)充,而ASP中沒有用戶定制標(biāo)簽庫,ASP是不能擴(kuò)充的。
看過“jsp基礎(chǔ)知識“的人還看了:
2.基于JSP網(wǎng)頁自動生成工具的設(shè)計(jì)與實(shí)現(xiàn)論文
3.電子商務(wù)網(wǎng)站平臺3p設(shè)計(jì)技術(shù)與網(wǎng)絡(luò)數(shù)據(jù)庫論文
jsp基礎(chǔ)知識
上一篇:jit基礎(chǔ)知識
下一篇:kdj基礎(chǔ)知識