1 sendRedirect
response.sendRedirect();
服务器根据逻辑,发送一个状态码,告诉浏览器重新去请求新的地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数都可以获取。注意:使用request.setAttribute的内容,不能读取了。因为不是同一个请求了。如图所示
2 forward
(1) 在servlet里面
request.getRequestDispatcher("jsp2.jsp").forward(request, response);
(2) 在jsp里面
<jsp:forward page="include.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的内容,可以正常获取使用。