1:转发使用的是
request.getRequestDispatcher()
重定向使用的是
response.sendRedirect();
2:请求的次数不一样
转发是一次请求浏览器只做了一次访问
重定向,浏览器至少访问两次
3:地址栏信息不一样
转发的地址栏不变,任然保留着上一次的请求路径
重定向的地址栏是一定变化的,和内容保持一致
4:访问资源不同
转发只能访问服务器内的资源
重定向没有任何限制,可以是内部也可以是外不
5:携带数据
因为转发只有一个request请求对象,request对象是可以携带参数的,所以转发可以携带参数
因为request请求对象是,发起请求时创建,请求结束后销毁,所以重定向无法携带参数,因为重定向是至少两次请求