一、ResquestDispatcher对象
1.forward()方法的工作原理
2.include()方法的工作原理
二、HttpServletResponse对象
3.sendRedirect()
三、差异
1.首先,sendRedirect与forward,include的最大区别是request,response..
2.sendRedirect产生新的请求与响应,前后已没有联系. 相当于在页面中重新输入一个URL,只是自动完成而已.
3.forward,include是共用同一请求.客户端完全不知道(浏览器中的URL不变)
4.sendRedirect与include,forward的区别在于是不是同一个request
5.include与forward的区别在于输出内容,以及响应头
6.forward()方法在服务器端工作;它只能在服务器内工作。因为它是在服务器内工作,故速度快。
sendRedirect()方法在客户端工作;它可以在服务器内外使用。它可以将响应重定向到另一个资源,这个资源可以是servlet,jsp,或html文件。它接受相对和绝对的url.也因为它是接受url,所以,它可以再服务器内外工作。缺点:速度慢
参考文献:sendRedirect与forward,include的区别_huanfengcheng的博客-CSDN博客