JSP靜態包含和動態包含問題

check.jsp的代碼

 

<%

String login =(String)session.getAttribute("login");

if(login==null||!login.equals("success")){

   response.sendRedirect("Login.jsp");

    return;

}

%>

 

用<%@ includefile="check.jsp"%>跳轉正常,

用<jsp:includepage="check.jsp"/>不能跳轉。爲什麼呢?

 

<%@ includefile="check.jsp"%>是include directive,也就是將你的check.jsp中所有代碼原封不動的放到Login.jsp中這條語句所在的位置,和你直接將上面這段代碼寫到Login.jsp中是一樣的效果;

<jsp:includepage="check.jsp"/>則是將check.jsp執行後的HTML代碼放到Login.jsp中的相應位置,但是check.jsp中的response.redirect("")或者response.addCookie("")等等關於response的操作,都會被忽視,也就是說用戶不會被送到另一個頁面,即不會實現跳轉。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章