日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Include,Forward,sendRedirct的區(qū)別

 最初九月雪 2014-04-07

三者在servlet中的最大區(qū)別是:

Include和Forward:將當前請求轉(zhuǎn)到另外一個JSP或者servlet處理。

sendRedirct:將當前請求返回到瀏覽器,帶上要redirect的URL,瀏覽器重新發(fā)一個新的請求到新的URL。

 

include和forward的區(qū)別:

include 是去而復返,forward 是前不見古人,后不見來者。

include 是把別人包含進來,forward 是丟掉了自己。


include是把另一個servlet/jsp處理過后的內(nèi)容拿過來與本身的servlet的內(nèi)容一同輸出.

原始servlet輸出的內(nèi)容+被include進來的servlet的輸出內(nèi)容+原始servlet輸出的內(nèi)容。

forward方法是把請求的內(nèi)容轉(zhuǎn)發(fā)到另外的一個servlet/jsp。在forward之前,在原始的servlet中不能對輸出做flush。

最終只有被被forward去的servlet的內(nèi)容被輸出。

 

在原始servlet中設置的響應狀態(tài)碼和響應頭會被include的servlet忽略。include的servlet在處理的時候只會保留進入include的servlet之后的狀態(tài)碼和響應頭。

對于forward,在兩個地方設置的狀態(tài)碼和響應頭都會被用到。

include亂碼的一個原因可能就是沒有在被include的servlet設置response.setContentType("text/html;charset=utf-8")。

 

不管是Include,Forward,還是sendRedirct,在該行代碼之后的語句仍然被執(zhí)行,只是輸出到response的內(nèi)容沒有作用。

如:before和after仍然被打印到控制臺。

System.out.println("before");

//include,forward,sendredirect語句

System.out.println("after");

 

forward在jsp和servlet中會有不同:如下after不會被打印到控制臺。

<%System.out.println("before"); %>
<jsp:forward page="t.dest"/> 
<%System.out.println("after"); %>

 

使用:

sendRedirect:response.sendRedirect("path");  servlet和jsp里面一樣。

include和forward:

getServletContext().getRequestDispatcher(path).include(request,response); 
getServletContext().getRequestDispatcher(path).forward(request,response);

這里面的path必須以"/",相對于當前WEB應用程序根目錄。

 

request.getRequestDispatcher(path).include(request,response); 
request.getRequestDispatcher(path).forward(request,response);

這里面的path可以是以"/"開頭,也可以使用相對路徑。

 

在JSP中

<jsp:include page=""/> 
<jsp:forward page=""/>

總結(jié):

sendRedirect與include,forward的區(qū)別在于是不是同一個request,sendRedirect會有兩次交互。
include與forward的區(qū)別在于輸出內(nèi)容(include包含兩者,forward只有forward一個),以及響應頭!

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多