在JSP中實現頁面跳轉
JSP應用開發是很多編程愛好者的關注,它是實現具體功能的途徑,JSP實現頁面的跳轉功能需要使用jsp forward Action。
語法:
- ﹤jsp:forward page="{relativeURL|﹤%= expression %﹥}"/﹥ 或
- ﹤jsp:forward page="{relativeURL|﹤%= expression %﹥}"﹥
- ﹤jsp:param name="parameterName"
- value="{parameterValue|﹤%= expression %﹥}"/﹥+﹤/jsp:forward﹥
這個action使您可以將request向前到另外一個頁面。它只有一個屬性,page。Page應有一個相對的URL組成。這可以是一個靜態的值或者是能夠在被請求的時候計算得到的值,就如下面兩個例子一般:
- ﹤jsp:forward page="/utils/errorReporter.jsp"/﹥
- ﹤jsp:forward page="﹤%= someJavaExpression %﹥"/﹥
- !supportEmptyParas]>
現在以一個具體例子來說明:在test1.jsp中使用forward使其跳轉到test2.jsp頁面中,實現頁面跳轉。
JSP實現頁面跳轉之Test1.jsp
- ﹤HTML﹥
- ﹤HEAD﹥
- ﹤TITLE﹥forward test﹤/TITLE﹥
- !supportEmptyParas]>
- ﹤/HEAD﹥
- !supportEmptyParas]>
- ﹤BODY BGCOLOR="#FFFFFF"﹥
- ﹤!--跳轉到test2.jsp--!﹥
- ﹤jsp:forward page="/test2.jsp"/﹥
- ﹤/BODY﹥
- ﹤/HTML﹥
- !supportEmptyParas]>
JSP實現頁面跳轉之Test2.jsp
- ﹤HTML﹥
- ﹤HEAD﹥
- ﹤TITLE﹥ forward test ﹤/TITLE﹥
- !supportEmptyParas]>
- ﹤/HEAD﹥
- !supportEmptyParas]>
- ﹤BODY BGCOLOR="#FFFFFF"﹥
- ﹤%out.println("這是jsp2.jsp頁面產生出的輸出");%﹥
- ﹤/BO#@62;
- ﹤/HTML﹥
- !supportEmptyParas]>
運行test1.jsp,可在瀏覽器中看見,這樣的JSP應用開發:"這是jsp2.jsp頁面產生出的輸出"的輸出信息。但是如果你在test1.jsp和test2.jsp這兩個頁面中有參數傳遞怎么辦呢?用get方式吧,不但總的長度有限制,使用現在十分不方便,而且有時候還不安全。其實我們完全可以使用jsp1.1中給forward里提供的para屬性就可以解決。現以test3.jsp和test4.jsp來說明。
- !supportEmptyParas]>
- Test1.jsp
- ﹤HTML﹥
- ﹤HEAD﹥
- ﹤TITLE﹥ forward test ﹤/TITLE﹥
- !supportEmptyParas]>
- ﹤/HEAD﹥
- !supportEmptyParas]>
- ﹤BODY BGCOLOR="#FFFFFF"﹥
- ﹤jsp:forward page="/test4.jsp"﹥
- ﹤jsp:param name="name" value="powerman"/﹥
- ﹤jsp:param name="address" value=" 北京市海淀區西三環北路21號久凌大廈北樓505室"/﹥
- ﹤/jsp:forward﹥
- ﹤/BODY﹥
- ﹤/HTML﹥
- !supportEmptyParas]>
- test2.jsp
- ﹤HTML﹥
- ﹤HEAD﹥
- ﹤TITLE﹥forward test﹤/TITLE﹥
- !supportEmptyParas]>
- ﹤/HEAD﹥
- !supportEmptyParas]>
- ﹤BODY BGCOLOR="#FFFFFF"﹥
- ﹤%
- out.println("這是jsp4.jsp頁面產生出的輸出"+"﹤br﹥");
- out.println("姓名:"+request.getParameter("name")+"﹤br﹥");
- out.println("地址:"+request.getParameter("address")+"﹤br﹥");
- !supportEmptyParas]>
- %﹥
- ﹤/BODY﹥
- ﹤/HTML﹥
運行Test3.jsp,可在瀏覽器中看見輸出信息 :
- "這是jsp4.jsp頁面產生出的輸出
- 姓名:powerman
- 地址:北京市海淀區西三環北路21號久凌大廈北樓505室"
通過以上的JSP實現的頁面跳轉是不是很有意思呢?對你再編程的思路是不是有點啟發呢?
【編輯推薦】