1. 程式人生 > >JSP7 個 動作指令

JSP7 個 動作指令

jsp中的指令分為兩大類,編譯指令和動作指令。

編制指令 <%@ inlcude file=” “%>和 <%@ page 屬性1 屬性2 %>
動作指令 <jsp:include><jsp:forward><jsp:useBean>

 JSP7 個 動作指令如下 :

  1. jsp:forward: 執行頁面轉向,將請求的處理轉發到下一個頁面。
  2. jsp:param: 用於傳遞引數,必須與其他支援引數曲標籤一起使用。
  3. jsp:include: 用於動態引入一個 JSP 頁面。
  4. jsp:p1ugin: 用於下載 JavaBean 或 Applet 到客戶端執行。
  5. jsp:useBean: 使用 JavaBean。
  6. jsp:setProperty: 修改 JavaBean 例項的屬性值。
  7. jsp:getProperty: 獲取 JavaBean 例項的屬性值。

jsp:forward

JSP 關於<jsp:forward>的使用以及傳遞引數 :https://blog.csdn.net/hdg745979749/article/details/72773776   

jsp頁面跳轉標籤 forward標籤詳解  效果圖展示

 https://jingyan.baidu.com/article/b7001fe19210fb0e7282dd3a.html

jsp中 forward跳轉和response跳轉  https://blog.csdn.net/peng_hong_fu/article/details/53160585

<jsp:forward page="url"/>

做為伺服器端跳轉,跳轉後位址列地址是當前地址,而不是目的頁面;執行時,立即跳轉,後面語句不執行。

response.sensRediresct("")

作為客戶端跳轉位址列會變成目的頁面的地址,執行時,待所有程式碼執行完成後再執行跳轉動作;進行重定向後,request中的屬性全部失效,並且開始一個新的request物件。

<a href="url"></a> 

超連結,目標欄地址也會改變

Servlet中的頁面轉發  RequestDispatcher rd=request.getRequestDispatcher("main.jsp").forward(request,response);

jsp:include:

1.第一種:jstl  import 

 

 <c:import url="inlayingJsp.jsp"></c:import> 

使用jstl標籤時,一定要在jsp檔案頭加入以下程式碼:<%@taglib prefix="c" uri="http://Java.sun.com/jsp/jstl/core"%>


2. 第二種:jsp include指令

 

<%@ include file="inlayingJsp.jsp" %>

include指令告訴容器:複製被包含檔案彙總的所有內容,再把它貼上到這個檔案中。

include指令在轉換時插入“Header.jsp”的原始碼,而<jsp:include>動作在執行時插入“Header.jsp"的響應。

靜態匯入指的是,將一個外部檔案嵌入到當前JSP檔案中,同時解析這個頁面的JSP語句,它會把目標頁面的其他編譯指令也包含進來。

 <%@include為靜態包含,<%@include不論包含的是txt文字還是jsp檔案,被包含的頁面都不會從新編譯。

 <%@include為靜態包含,包含了幾個JSP轉譯成servlet時就會有  幾 個 class檔案,如果在jsp1定義了變數i同時在jsp2也定義了變數i那麼你編譯都會通不過的,jsp容器會告訴你i重複定義了.

3. 第三種:jsp include動作

   動態匯入是不會匯入include頁面的編譯指令的,而是僅僅將被匯入頁面的body內容插入本頁面。
  <jsp:include 為動態包含,<jsp:include 如包含jsp檔案,這每次載入主頁面的時候,被包含的頁面都要重新編譯。
  就是說不管你包含了幾個jsp頁面轉譯成servlet時中有一個class檔案