JSP開發(fā)入門(二)----JSP語(yǔ)法的基本原理
更新時(shí)間:2006年10月13日 00:00:00 作者:
安裝之后,接下來(lái)我們要討論JSP的語(yǔ)法.如果要偷懶,你可以下載語(yǔ)法卡而如果你不熟悉 Java的程序設(shè)計(jì),你可能會(huì)想要參考Sun的使用手冊(cè);然而,網(wǎng)站建立者不應(yīng)該做太多的Java發(fā)展。除了幾個(gè)函式呼叫之外,出現(xiàn)在你JSP網(wǎng)頁(yè)上的Java程序代碼應(yīng)該將它減到最少;
記住這點(diǎn)之后,現(xiàn)在讓我們先來(lái)看看JSP的編譯器指引與指令組件,之后我們將解釋JavaBeans與內(nèi)部對(duì)象. JSP編譯器指引與指令組件有五種型態(tài).JSP 1.0之后,大部分的JSP是包含在以<% 作為開始%>作為結(jié)束的單一卷標(biāo)里.新的 JSP 1.1規(guī)格已經(jīng)發(fā)表了,它同時(shí)也與XML兼容.
JSP的編譯器指引與指令組件
編譯器指示 <%@ 編譯器指示 %>
聲明 <%! 聲明 %>
表達(dá)式 <%= 表達(dá)式 %>
程序代碼段/小型指令 <% 程序代碼片段 %>
注釋 <%-- 注釋 --%>
編譯器指示
JSP的編譯器指示是針對(duì)JSP引擎。它們并不會(huì)直接產(chǎn)生任何看得見的輸出;相反的,它們是在告訴引擎如何處理其它的JSP網(wǎng)頁(yè)。它們永遠(yuǎn)包含在 <%@ ?%>卷標(biāo)里。兩個(gè)主要的指引是 page與include。我們不會(huì)討論taglib編譯器指引但它可以在JSP1.1里用來(lái)建立自訂卷標(biāo)。
你幾乎可以在你所有的JSP網(wǎng)頁(yè)最上面找到page編譯器指示。雖然這不是必須的,但它可以讓你指定到哪里可以找到支持的Java類別這類的事:
<%@ page import="java.util.Date" %>,
當(dāng)發(fā)生Java問(wèn)題的事件時(shí)應(yīng)該將訊息傳送到哪里:
<%@ page errorPage="errorPage.jsp" %>,
以及你是?需要為使用者管理通話期的信息,可能存取多個(gè)網(wǎng)頁(yè)(稍后在JavaBeans里會(huì)有更多通話期的討論):
<%@ page session="true" %>。
include編譯器指示讓你將你的內(nèi)容分成幾個(gè)可管理的組件,就像那些有表頭或腳注的網(wǎng)頁(yè)。所包含的網(wǎng)頁(yè)可以是固定格式的HTML網(wǎng)頁(yè)或者是JSP內(nèi)容的網(wǎng)頁(yè):
<%@ include file="filename.jsp" %>。
宣告
JSP聲明讓你定義網(wǎng)頁(yè)層的變量,來(lái)儲(chǔ)存信息或定義支持的函式,讓JSP網(wǎng)頁(yè)的其余部分能夠使用。如果你發(fā)現(xiàn)自己有太多的程序代碼,你最好將它們放在不同的Java類別里。你可以在 <%! ?%>卷標(biāo)里找到聲明。記住要在變量聲明的后面加上分號(hào),就跟任何有效的Java敘述的形式一樣: <%! int i=0; %>。
表達(dá)式
JSP里有表達(dá)式,評(píng)估表達(dá)式的結(jié)果可以轉(zhuǎn)換成字符串并且直接使用在輸出網(wǎng)頁(yè)上。JSP運(yùn)算是屬于 <%= ?%> 卷標(biāo)里,并不包含分號(hào),加引號(hào)字符串的無(wú)用部分。
<%= i %>
<%= "Hello" %> 。
程序代碼段/小型指令文件
JSP程序代碼片段或小型指令文件是包含在<% ?%> 卷標(biāo)里。當(dāng)網(wǎng)絡(luò)服務(wù)器接受這段請(qǐng)求時(shí),這段Java程序代碼會(huì)執(zhí)行。小型指令文件可以是原始的HTML或XML,其內(nèi)部的程序代碼片段可以讓你建立有條件的執(zhí)行程序代碼,或者只是一些使用另一塊程序代碼的東西。舉例來(lái)說(shuō),下列的程序代碼結(jié)合了表達(dá)式與小型指令文件,在H1,H2,H3,以及H4卷標(biāo)里顯示字符串"Hello"。小型指令文件不限于一行的原始程序代碼 :
<% for (int i=1; i<=4; i++) { %>
<H<%=i%>>Hello</H<%=i%>>
<% } %>。
注釋
最后一個(gè)主要JSP組件是嵌入式注釋。雖然你可以在你的檔案里包含HTML注釋,如果使用者檢視網(wǎng)頁(yè)的原始碼,他們也會(huì)看到這些注釋。如果你不要讓使用者看到你的批注,你可以將它放在<%-- ?--%>卷標(biāo)里:
<%-- 針對(duì)服務(wù)器端的注釋 --%>。
記住這點(diǎn)之后,現(xiàn)在讓我們先來(lái)看看JSP的編譯器指引與指令組件,之后我們將解釋JavaBeans與內(nèi)部對(duì)象. JSP編譯器指引與指令組件有五種型態(tài).JSP 1.0之后,大部分的JSP是包含在以<% 作為開始%>作為結(jié)束的單一卷標(biāo)里.新的 JSP 1.1規(guī)格已經(jīng)發(fā)表了,它同時(shí)也與XML兼容.
JSP的編譯器指引與指令組件
編譯器指示 <%@ 編譯器指示 %>
聲明 <%! 聲明 %>
表達(dá)式 <%= 表達(dá)式 %>
程序代碼段/小型指令 <% 程序代碼片段 %>
注釋 <%-- 注釋 --%>
編譯器指示
JSP的編譯器指示是針對(duì)JSP引擎。它們并不會(huì)直接產(chǎn)生任何看得見的輸出;相反的,它們是在告訴引擎如何處理其它的JSP網(wǎng)頁(yè)。它們永遠(yuǎn)包含在 <%@ ?%>卷標(biāo)里。兩個(gè)主要的指引是 page與include。我們不會(huì)討論taglib編譯器指引但它可以在JSP1.1里用來(lái)建立自訂卷標(biāo)。
你幾乎可以在你所有的JSP網(wǎng)頁(yè)最上面找到page編譯器指示。雖然這不是必須的,但它可以讓你指定到哪里可以找到支持的Java類別這類的事:
<%@ page import="java.util.Date" %>,
當(dāng)發(fā)生Java問(wèn)題的事件時(shí)應(yīng)該將訊息傳送到哪里:
<%@ page errorPage="errorPage.jsp" %>,
以及你是?需要為使用者管理通話期的信息,可能存取多個(gè)網(wǎng)頁(yè)(稍后在JavaBeans里會(huì)有更多通話期的討論):
<%@ page session="true" %>。
include編譯器指示讓你將你的內(nèi)容分成幾個(gè)可管理的組件,就像那些有表頭或腳注的網(wǎng)頁(yè)。所包含的網(wǎng)頁(yè)可以是固定格式的HTML網(wǎng)頁(yè)或者是JSP內(nèi)容的網(wǎng)頁(yè):
<%@ include file="filename.jsp" %>。
宣告
JSP聲明讓你定義網(wǎng)頁(yè)層的變量,來(lái)儲(chǔ)存信息或定義支持的函式,讓JSP網(wǎng)頁(yè)的其余部分能夠使用。如果你發(fā)現(xiàn)自己有太多的程序代碼,你最好將它們放在不同的Java類別里。你可以在 <%! ?%>卷標(biāo)里找到聲明。記住要在變量聲明的后面加上分號(hào),就跟任何有效的Java敘述的形式一樣: <%! int i=0; %>。
表達(dá)式
JSP里有表達(dá)式,評(píng)估表達(dá)式的結(jié)果可以轉(zhuǎn)換成字符串并且直接使用在輸出網(wǎng)頁(yè)上。JSP運(yùn)算是屬于 <%= ?%> 卷標(biāo)里,并不包含分號(hào),加引號(hào)字符串的無(wú)用部分。
<%= i %>
<%= "Hello" %> 。
程序代碼段/小型指令文件
JSP程序代碼片段或小型指令文件是包含在<% ?%> 卷標(biāo)里。當(dāng)網(wǎng)絡(luò)服務(wù)器接受這段請(qǐng)求時(shí),這段Java程序代碼會(huì)執(zhí)行。小型指令文件可以是原始的HTML或XML,其內(nèi)部的程序代碼片段可以讓你建立有條件的執(zhí)行程序代碼,或者只是一些使用另一塊程序代碼的東西。舉例來(lái)說(shuō),下列的程序代碼結(jié)合了表達(dá)式與小型指令文件,在H1,H2,H3,以及H4卷標(biāo)里顯示字符串"Hello"。小型指令文件不限于一行的原始程序代碼 :
<% for (int i=1; i<=4; i++) { %>
<H<%=i%>>Hello</H<%=i%>>
<% } %>。
注釋
最后一個(gè)主要JSP組件是嵌入式注釋。雖然你可以在你的檔案里包含HTML注釋,如果使用者檢視網(wǎng)頁(yè)的原始碼,他們也會(huì)看到這些注釋。如果你不要讓使用者看到你的批注,你可以將它放在<%-- ?--%>卷標(biāo)里:
<%-- 針對(duì)服務(wù)器端的注釋 --%>。
相關(guān)文章
JBuilder2005實(shí)現(xiàn)重構(gòu)
JBuilder2005實(shí)現(xiàn)重構(gòu)...2006-10-10Jsp+Servlet實(shí)現(xiàn)文件上傳下載 文件上傳(一)
這篇文章主要為大家詳細(xì)介紹了Jsp+Servlet實(shí)現(xiàn)文件上傳下載中的第一部分文件上傳,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01JSP實(shí)現(xiàn)的簡(jiǎn)單分頁(yè)示例
這篇文章主要介紹了JSP實(shí)現(xiàn)的簡(jiǎn)單分頁(yè),涉及jsp簡(jiǎn)單數(shù)據(jù)庫(kù)查找及遍歷實(shí)現(xiàn)分頁(yè)的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10JSP 多條SQL語(yǔ)句同時(shí)執(zhí)行的方法
這是一段基本的SQL插入語(yǔ)句,分別將兩個(gè)值插入到兩個(gè)表中,上面的程序已經(jīng)能夠完成這一需求,但是實(shí)際操作中并不建議這樣寫2009-02-02處理jsp顯示文字過(guò)長(zhǎng)問(wèn)題的解決方法
處理jsp顯示文字過(guò)長(zhǎng)問(wèn)題的解決方法,需要的朋友可以參考一下2013-03-03JSP使用自定義標(biāo)簽防止表單重復(fù)提交的方法
這篇文章主要介紹了JSP使用自定義標(biāo)簽防止表單重復(fù)提交的方法,以實(shí)例形式較為詳細(xì)的分析了JSP基于自定義標(biāo)簽防止表單重復(fù)提交的具體步驟與實(shí)現(xiàn)方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-09-09