两个方法都是让浏览器转向其他资源,它们的区别是:
1.请求转发要将HttpServletRequest与HttpServletResponse作为参数传入RequestDispatcher的forward方法,也就是新资源中也会用上上个资源的request跟response。
例如登陆页面传入了姓名与密码,登陆成功就会转向其他页面,此时的姓名作为string也被带到其他页面去了。
因为response也是作为forward的参数传输,所以不能因为在原页面上使用response来输出,不然会报错。
2.重定向是完完全全让浏览器去访问其他资源,很可能是去访问其他网站,因此与原页面关系不大。
两者最明显的区别就是--请求转发是去访问同一个服务器的资源,而重定向可以访问同服务器资源也可以访问其他主机。