[Jweb] JSP-编程 04 转向 jsp:forward 与 sendRedirect

JSP@04  jsp:forward 与 sendRedirect
    test.jsp 源码如下 :
<%
response.sendRedirect("forforward1.jsp"); // forforward1.jsp 相对路径
System.out.println("ddd"); // 输出在服务器端了,在tomcat窗口中显示了。
%>

    response 是内置对象
   @1, response.sendRedirect("forforward1.jsp"); 告诉客户端浏览器,你在IE中,打上 forforward1.jsp , 再访问。后面代码继续执行。
      send后的语句会继续执行,除非 return, 速度慢, 需要到客户端的往返,可以转到任何页面, 转时参数可直接写在被转url后面.但是
 当前页面不能取到上一个页面传递的参数。/代表的是http://127.0.0.1/
   @2, <jsp:forward -> 转走后,后面的代码不会被执行,但是可以取参数。
      虽然是不同的对象,但是,可以取到上一个页面的内容, forward 后的语句不会继续发送给客户端
      速度快, 服务器内部转换, 地址栏没有变化, 可以传参数, /代表的是http://127.0.0.1/my
      并且只能以/开头, 转走后,后面的代码不会被执行。
    示例程序 : test.jsp, forforward.jsp, forward.jsp, forward1.jsp, forforward1.jsp
   forward1.jsp 源码如下 : 
	<html>
	 <head>
	  <title>forward example</title>
	 <body bgcolor=red>
	    welcome to here!
	  <jsp:forward page="forforward1.jsp">
		 <jsp:param name="name" value="m" />
		 <jsp:param name="oldName" value='<%=request.getParameter("name")%>' />
		 <jsp:param name="ccc" value="manager" />
	  </jsp:forward>
	  <%System.out.println("eee");%>
	 </body>
	</html>
   forforward.jsp 源码如下 :
    <html>
	 <head><title>forforward1.jsp</title></head>
	 <body bgcolor=blue>
	   here is the forforward1 page
		<br>
		<%=request.getParameter("name")%>
		<%=request.getParameter("oldName")%>
		<%=request.getParameter("ccc")%>
	 </body>
	</html>


原文地址:https://www.cnblogs.com/robbychan/p/3786862.html