javascript
JSP简单练习-JSP动作指令
JSP動作指令在JSP程序設計中經常會用到,與JSP指令不同,它將影響JSP運行是的功能!
1、include動作指令:
? ? ? include動作指令用來在JSP頁面中動態包含一個文件,這樣包含頁面程序與被包含頁面的程序是彼此獨立的,互不影響。JSP的include動作指令可包含一個動態文件也可以包含一個靜態文件。如果包含的是一個靜態文件(如一個文本文件),就直接輸出給客戶端,由客戶端的瀏覽器負責顯示,如果包含的是一個動態文件,則由服務器的JSP引擎負責執行,再把運行結果返回給客戶端顯示出來。
? ? ? 注意:include動作指令與include指令不同,后者是靜態包含,將包含文件與被包含文件組合形成一個文件,而前者是動態包含,原理不同,使用時也會有差別。
? ? ? include動作指令的格式如下:
? ? ? <jsp:include page="文件路徑"/> ?或者:
? ? ? <jsp:include page="文件路徑">
? ? ? ? ? <jsp:param name="參數名1" value="參數1的值" />
? ? ? ? ? ......
? ? ? ? ??<jsp:param name="參數名n" value="參數n的值" />
? ? ? </jsp:include>
? ? ? 可以看出,在不需要傳遞參數時,這兩種形式的效果是一樣的,如果要傳遞參數就要使用第二種形式了。“文件路徑”如果以"/"開頭,則使用相對JSP服務器應用的根目錄路徑,如果直接用文件名或文件夾名+文件名形式,則表明是當前目錄的相對路徑。
? ? ? 注意:使用時要注意被包含的是動態文件時才傳遞參數和參數的值。
2、forward動作指令:
? ? ? forward動作指令用來重定向網頁,即從當前網頁的forward動作指令處轉向執行另一個網頁程序。forward動作指令的調用語法格式如下:
? ? ? <jsp:forward page="文件路徑" /> 或者:
? ? ? ? ? <jsp:para name="參數名1“ value="參數1的值"/>
? ? ? ? ? ......
? ? ? ? ? <jsp:para name="參數名n“ value="參數n的值"/>
? ? ? <jsp:forward>
? ? ? 其中,page參數中的值是要轉向的文件,可以是相對應用服務器的路徑,也可以是相對當前目錄的路徑;如果要轉向的網頁是一個動態網頁,如:JSP文件,則可以傳遞參數。
? ? ? 注意:頁面之間的重定向也可以使用response.sendRedirect(目的URL)方法來實現,response是JSP的內置對象。
3、param動作指令:
? ? ? param動作指令用來向需要包含的動態頁面或要轉向的動態頁面傳遞參數。param應用程序示例:
<!-- paramExample.jsp文件 --> <%@ page contentType="text/html; charset=gb2312" %> <html> <body><% // param應用示例Java程序片String s=null;s="Lest's go!";%><jsp:forward page="forParam.jsp"><jsp:param value="<%=s %>" name="s"/></jsp:forward> </body> </html> <!-- forParam文件 --> <%@ page contentType="text/html;charset=gb2312" %> <html> <body><%out.println("接收的參數s的值為:"+request.getParameter("s"));%> </body> </html>4、plugin動作指令:? ? ? 這個動作指令是用來在JSP中加載Java applet小程序的。plugin動作指令的語法格式如下: ?
<jsp:plugin type="applet" code="小程序的類文件" codebase="小程序所在的位置" jreversion="虛擬機版本號" width="小程序顯示寬度 " height="小程序顯示高度"><jsp:fallback>客戶端瀏覽器是否支持插件下載的提示信息</jsp:fallback> </jsp:plugin>? ? ? 上述語法格式中,code參數是指小程序經過編譯后的字節碼文件,擴展名為.class;codebase參數指出這個字節碼文件所在的位置,可以是相對路徑也可以是絕對路徑,但在這個參數中不需要文件名,只需要目錄路徑就可以了。如果字節碼文件與調用的JSP文件在同一目錄下則此參數可以省略;其中,jreversion參數指出運行小程序的虛擬機版本號;width和height參數分別顯示小程序運行結果的寬度和高度;<jsp:fallback>...</jsp:fallback>中的參數為提示信息。5、useBean動作指令:
? ? ? 這是一個非常重要的指令,用來在JSP中創建并使用一個JavaBean。實際工程中常用JavaBean做組件開發,而在JSP中只需聲明并使用這個組件,這樣可以較大限度地實現靜態內容和動態內容的分離,這也是JSP的有點之一。JavaBean在JSP中的語法格式如下:
? ? ? <jsp:useBean id="bean的名稱" scope="有效范圍" class="包名.類名">
? ? ? </jsp:useBean>
? ? ? 其中,id參數是在JSP中這個bean組件的名稱,只要是在它的有效范圍內,均可使用這個名稱來調用它;scope為bean的有效范圍,它的取值有四種,page,request,session,application,默認情況下取值為page,值為page表示當前JSP頁面及當前頁面所包含的靜態文件中有效;值為request表示有效范圍僅在request期間;值為session表示在與每個客戶的會話期間均有效;值為application表示所有客戶端共享這個bean,直至服務器關閉時才取消這個bean。class參數中如果類屬于某個包則在類名的前面要加上包名,中間可用"."引用,否則直接用類名即可。
6、setProperty動作指令:
? ? ? 這個動作指令用來設置Bean中屬性的值,其基本語法格式有如下四種:
? ? ? <jsp:setProperty name="bean的名稱" property="*"/>
? ? ? <jsp:setProperty name="bean的名稱" property="屬性名稱"/>
? ? ? <jsp:setProperty name="bean的名稱" property="屬性名稱" param="參數名稱"/>
? ? ? <jsp:setProperty name="bean的名稱" property="屬性名稱" value="屬性值"/>
? ? ? setProperty動作指令可以在useBean動作指令中使用,也可在聲明了useBean后使用,但不能在聲明之前使用。與useBean動作指令結合使用的格式如下:
? ? ? <jsp:useBean id="bean的名稱" scope="有效范圍" class="包名.類名">
? ? ? ? ? <jsp:setProperty name="bean的名稱" property="屬性的名稱" value="屬性值"/>
? ? ? ? ? ......
? ? ? ? ? <jsp:setProperty name="bean的名稱“ property=”屬性的名稱" value="屬性值"/>
? ? ? </jsp:useBean>
7、getProperty動作指令:
? ? ? getProperty動作指令用來獲得bean的屬性并將其轉換為字符串,再在JSP頁面中輸出。使用格式如下:
? ? ? <jsp:getProperty name="bean的名稱" property="屬性名稱"/>
總結
以上是生活随笔為你收集整理的JSP简单练习-JSP动作指令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于大中台小前台模式设计高并发电商架构
- 下一篇: 阿里文娱技术专家战獒: 领域驱动设计详解