请求转发
请求转发的路径
request.getRequestDispatcher("/welcome.jsp").forward(request,response);
重定向
重定向的路径需要加项目工程名
response.sendRedirect(request.getContextPath()+"/welcome.jsp");
区别
- 重定向两次不同请求,请求转发同一次请求
- 重定向地址栏发生变化,请求转发地址栏不改变
- 请求转发只能访问本站点,因为转发必须是在同一台服务器下完成,重定向可以在不同的服务器下完成)
- 转发的速度快;重定向速度慢;请求转发优于重定向
- 转发在服务器端完成的;重定向是在客户端完成的
- 转发不会执行转发后的代码;重定向会执行重定向之后的代码