转发
<%
request.getRequestDispatcher("XXX.jsp").forward(request,response);
%>
特点:
- URL地址是不变的。完成一个内部资源的跳转过程。
- 转发是服务器跳转
- 能够实现带值跳转
- 请求发起后,只进行一次请求
- 速度较快,因为只有一次请求,又是在站内跳转
重定向
<%
response.sendRedirect("XXX.jsp");
%>
特点:
- URL地址会改变。浏览器会发起两次请求,第一次是请求的目标(30X),第二次会有浏览器跳转到目标页面,该过程是一个重定向的过程。
- 不能实现带值跳转。
- 可以跳转到站外。
- 由于两次跳转,速度较慢。
- 重定向是浏览器跳转。
一个页面只能一次重定向,重定向后不要写东西,两次重定向会报错50X。
一个页面只能一次转发,转发后不要连续转发,显示第一次转发的页面,第两次转发会报错50X。