JSP標簽
JSP標簽也稱之為Jsp Action(JSP動作)元素,它用於在Jsp頁面中提供業務邏輯功能,避免在JSP頁面中直接編寫java代碼,造成jsp頁面難以維護。
JSP常用標簽
<jsp:include>標簽
<jsp:include>標簽用於把另外一個資源的輸出內容插入進當前JSP頁面的輸出內容之中,這種在JSP頁面執行時的引入方式稱之為動態引入。
語法:<jsp:include page="relativeURL | <%=expression%>" flush="true|false" />
page屬性用於指定被引入資源的相對路徑,它也可以通過執行一個表達式來獲得。
flush屬性指定在插入其他資源的輸出內容時,是否先將當前JSP頁面的已輸出的內容刷新到客戶端。
<jsp:forward>標簽
<jsp:forward>標簽用於把請求轉發給另外一個資源。
語法:<jsp:forward page="relativeURL | <%=expression%>" />
page屬性用於指定請求轉發到的資源的相對路徑,它也可以通過執行一個表達式來獲得。
<jsp:param>標簽
當使用<jsp:include>和<jsp:forward>標簽引入或將請求轉發給其它資源時,可以使用<jsp:param>標簽向這個資源傳遞參數。
語法1:<jsp:include page="relativeURL | <%=expression%>">
<jsp:param name="parameterName" value="parameterValue|<%= expression %>" />
</jsp:include>
語法2:<jsp:forward page="relativeURL | <%=expression%>">
<jsp:param name="parameterName" value="parameterValue|<%= expression %>" />
</jsp:include>
<jsp:param>標簽的name屬性用於指定參數名,value屬性用於指定參數值。在<jsp:include>和<jsp:forward>標簽中可以使用多個<jsp:param>標簽來傳遞多個參數。
<jsp:include>與include指令的比較
<jsp:include>標簽是動態引入,<jsp:include>標簽涉及到的2個JSP頁面會被翻譯成2個servlet,這2個servlet的內容在執行時進行合並。
而include指令是靜態引入,涉及到的2個JSP頁面會被翻譯成一個servlet,其內容是在源文件級別進行合並。
不管是<jsp:include>標簽,還是include指令,它們都會把兩個JSP頁面內容合並輸出,所以這兩個頁面不要出現重復的HTML全局架構標簽,否則輸出給客戶端的內容將會是一個格式混亂的HTML文檔。
web開發的4個域對象
page域(pageContext) 周期:當前頁面
稱之為request域(request) 周期:請求結束
稱之為session域(session) 周期:會話結束
稱之為application域(servletContext) 周期:整個web應用
摘自 chenglong0513