A.servlet中request中的forward,include
RequestDispatcher rd = request.getRequestDispatcher("1.jsp");
rd.forward(req,resp);直接就转向1.jsp,属于同一次请求,只要在servlet中与request中存储有用的东西,就得中这两个
都是同一次请求,可以转到1.jsp
RequestDispatcher rd = request.getRequestDispatcher("2.jsp");
rd.include(req,resp);与forward不同的是包含1.jsp,显示完1.jsp后继续显示2.jsp
response.Redirct();不属于同一次请求,如果要用request中储存的东西,就不可以用这个
这几个转向浏览器的地址栏都不发生改变
B.JSP中<c:forward>与<c:include>与servlet中差不多
<c:forward>转向完页面停留在转向的那个页面,虽然显示的是那个页面但是原页面<c:forward>上面的代码也执行了,下面的代码没执行
<c:include>先执行原页面显示内容,然后显示转向页面内容,然后再显示原页面剩余内容。
欢迎网友指正!