Welcome

首页 / 网页编程 / JSP / jsp/servlet 中sendRedirect、include和forward区别

jsp/servlet 中sendRedirect、include和forward区别2014-10-27sendRedirect

response.sendRedirect();
服务器根据逻辑,发送一个状态码,告诉浏览器重新去请求新的地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数都可以获取。注意:使用request.setAttribute的内容,不能读取了。因为不是同一个请求了。如图所示

2  forward

(1) 在servlet里面

request.getRequestDispatcher("jsp2.jsp").forward(request, response);

  (2) 在jsp里面

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

本栏目更多精彩内容:http://www.bianceng.cn/webkf/JSP/

页面会是页面2的内容,地址栏不变。使用request.setAttribute的内容,可以正常使用,因为是请求转发。如图

3  include

 (1)在servlet里面

request.getRequestDispatcher("jsp2.jsp").include(request, response);
(2) 在jsp里面

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

◆页面会同时包含页面1和页面2的内容,地址栏不变。

◆使用request.setAttribute的内容,可以正常获取使用。