您的位置:首页 > 其它

重定向与转发 学习笔记

2012-08-13 10:39 218 查看
response.sendRedirect("***");重定向:发送请求 -->服务器运行-->响应请求,返回给浏览器一个新的地址与响应码-->浏览器根据响应码,判定该响应为重定向,自动发送一个新的请求给服务器,请求地址为之前返回的地址-->服务器运行-->响应请求给浏览器 可以看出,浏览器发送了两次请求,服务器返回了两次信息。 request response 不共享。URL地址改变。

request.getRequestDispatcher("***").forward(request, response);转发:浏览器向服务器发送请求-->服务器处理-->服务器向浏览器返回信息。可以看出,浏览器发送了一次请求,服务器返回一次信息。request response共享 URL地址不变。

例子说明 forward的含义:

a.jsp
<body>
<a href="b.jsp?id=1">A--B</a>
</body>

b.jsp
<body>
<%= request.getParameter("id")%>
<a href="c.jsp?name=2">B--c</a>
</body>

c.jsp
<body>
<%=request.getParameter("id") %>
<%=request.getParameter("name") %>
<jsp:forward page="d.jsp?text=3"></jsp:forward>
</body>

d.jsp
<body>
<%=request.getParameter("id") %><br />
<%=request.getParameter("name") %>
<%=request.getParameter("text") %>
<jsp:forward page="f.jsp?name2=5"></jsp:forward>
</body>

f.jsp
<body>
<%=request.getParameter("id") %><br />
<%=request.getParameter("name") %>
<%=request.getParameter("text") %>
<%=request.getParameter("name2") %>
</body>

result:
null
235
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: