- Java Web從入門到精通(第2版)
- 明日科技
- 1051字
- 2020-11-28 17:38:23
5.3 腳本標(biāo)識(shí)
在JSP頁面中,腳本標(biāo)識(shí)使用得最為頻繁。因?yàn)樗鼈兡軌蚍奖恪㈧`活地生成頁面中的動(dòng)態(tài)內(nèi)容,特別是Scriptlet腳本程序。JSP中的腳本標(biāo)識(shí)包括3部分,即JSP表達(dá)式(Expression)、聲明標(biāo)識(shí)(Declaration)和腳本程序(Scriptlet)。通過這些標(biāo)識(shí),在JSP頁面中可以像編寫Java程序一樣來聲明變量、定義函數(shù)或進(jìn)行各種表達(dá)式的運(yùn)算。下面將對(duì)這些標(biāo)識(shí)進(jìn)行詳細(xì)介紹。
5.3.1 JSP表達(dá)式
視頻講解:光盤\TM\lx\5\05 JSP表達(dá)式.mp4
JSP表達(dá)式用于向頁面中輸出信息,其語法格式如下:
<% = 表達(dá)式%>
參數(shù)說明:
表達(dá)式:可以是任何Java語言的完整表達(dá)式。該表達(dá)式的最終運(yùn)算結(jié)果將被轉(zhuǎn)換為字符串。
注意
“<%”與“=”之間不可以有空格,但是“=”與其后面的表達(dá)式之間可以有空格。
【例5.13】使用JSP表達(dá)式在頁面中輸出信息。示例代碼如下:
<%String manager="mr"; %> //定義保存管理員名的變量 管理員:<%=manager %> //輸出結(jié)果為:管理員:mr <%="管理員:"+manager %> //輸出結(jié)果為:管理員:mr <%=5+6 %> //輸出結(jié)果為:11 <%String url="126875.jpg"; %> //定義保存文件名稱的變量 <img src="images/<%=url %>"> //輸出結(jié)果為:<img src="images/126875.jpg">
說明
JSP表達(dá)式不僅可以插入到網(wǎng)頁的文本中,用于輸出文本內(nèi)容,也可以插入到HTML標(biāo)記中,用于動(dòng)態(tài)設(shè)置屬性值。
5.3.2 聲明標(biāo)識(shí)
視頻講解:光盤\TM\lx\5\06聲明標(biāo)識(shí).mp4
聲明標(biāo)識(shí)用于在JSP頁面中定義全局的變量或方法。通過聲明標(biāo)識(shí)定義的變量和方法可以被整個(gè)JSP頁面訪問,所以通常使用該標(biāo)識(shí)定義整個(gè)JSP頁面需要引用的變量或方法。
說明
服務(wù)器執(zhí)行JSP頁面時(shí),會(huì)將JSP頁面轉(zhuǎn)換為Servlet類,在該類中會(huì)把使用JSP聲明標(biāo)識(shí)定義的變量和方法轉(zhuǎn)換為類的成員變量和方法。
聲明標(biāo)識(shí)的語法格式如下:
<%! 聲明變量或方法的代碼 %>
注意
“<%”與“! ”之間不可以有空格,但是“! ”與其后面的代碼之間可以有空格。另外,“<%! ”與“%>”可以不在同一行,例如,下面的格式也是正確的。
<%! 聲明變量或方法的代碼 %>
【例5.14】通過聲明標(biāo)識(shí)聲明一個(gè)全局變量和全局方法。代碼如下:
<%! int number=0; //聲明全局變量 int count(){ //聲明全局方法 number++; //累加number return number; //返回number的值 } %>
通過上面的代碼聲明全局變量和全局方法后,在后面如果通過<%=count()%>調(diào)用全局方法,則每次刷新頁面,都會(huì)輸出前一次值+1的值。
5.3.3 代碼片段
視頻講解:光盤\TM\lx\5\07代碼片段.mp4
所謂代碼片段,就是在JSP頁面中嵌入的Java代碼或是腳本代碼。代碼片段將在頁面請(qǐng)求的處理期間被執(zhí)行,通過Java代碼可以定義變量或是流程控制語句等;而通過腳本代碼可以應(yīng)用JSP的內(nèi)置對(duì)象在頁面輸出內(nèi)容、處理請(qǐng)求和響應(yīng)、訪問session會(huì)話等。代碼片段的語法格式如下:
<% Java代碼或是腳本代碼 %>
代碼片段的使用比較靈活,它所實(shí)現(xiàn)的功能是JSP表達(dá)式無法實(shí)現(xiàn)的。
說明
代碼片段與聲明標(biāo)識(shí)的區(qū)別是:通過聲明標(biāo)識(shí)創(chuàng)建的變量和方法在當(dāng)前JSP頁面中有效,它的生命周期是從創(chuàng)建開始到服務(wù)器關(guān)閉結(jié)束;代碼片段創(chuàng)建的變量或方法,也是在當(dāng)前JSP頁面中有效,但它的生命周期是頁面關(guān)閉后就會(huì)被銷毀。
【例5.15】通過代碼片段和JSP表達(dá)式在JSP頁面中輸出九九乘法表。(實(shí)例位置:光盤\TM\sl\5\3)
編寫一個(gè)名稱為index.jsp的文件,在該頁面中先通過代碼片段將輸出九九乘法表的文本連接成一個(gè)字符串,然后通過JSP表達(dá)式輸出該字符串。index.jsp文件的代碼如下:
<body> <% String str=""; //聲明保存九九乘法表的字符串變量 //連接生成九九乘法表的字符串 for(int i=1; i<=9; i++){ //外循環(huán) for(int j=1; j<=i; j++){ //內(nèi)循環(huán) str += j + "*" + i + "=" + j * i; str+=" "; //加入空格符 } str+="<br>"; //加入換行符 } %> <table width="440" height="85" border="1" cellpadding="0" cellspacing="0" style="font:9pt; " bordercolordark="#666666" bordercolorlight="#FFFFFF" bordercolor="#FFFFFF"> <tr> <td height="30" align="center">九九乘法表</td> </tr> <tr> <td style="padding:3pt"> <%=str%> //輸出九九乘法表 </td> </tr> </table> </body>
運(yùn)行程序,將顯示如圖5.5所示的結(jié)果。

圖5.5 在頁面中輸出九九乘法表
- Java性能權(quán)威指南(第2版)
- Getting Started with NativeScript
- 從Excel到Python:用Python輕松處理Excel數(shù)據(jù)(第2版)
- 軟件測(cè)試技術(shù)指南
- Gradle for Android
- Java EE核心技術(shù)與應(yīng)用
- The Professional ScrumMaster’s Handbook
- Kotlin開發(fā)教程(全2冊(cè))
- 基于SpringBoot實(shí)現(xiàn):Java分布式中間件開發(fā)入門與實(shí)戰(zhàn)
- Scratch趣味編程:陪孩子像搭積木一樣學(xué)編程
- JavaScript程序設(shè)計(jì)(第2版)
- Android群英傳
- Julia 1.0 Programming Complete Reference Guide
- 從零開始學(xué)Android開發(fā)
- NGUI for Unity