请求转发:
- 浏览器向Servlet1发出访问请求;
- Servlet1调用forward()方法(走到Servlet2,调用之前需要得到Servlet2的路径),在服务器端内部将请求转发到Servlet2;
- 最终由Servlet2做出响应
请求转发的特点:
- 浏览器地址栏没有变化
- 一次请求
- 他们共享Reqeust对象域中的数据
- 可以转发到WEB-INF目录下
- 不可以访问工程以外资源
代码:
请求重定向:
- 浏览器向Response1发出访问请求;
- Response1调用sendRedirect()方法,将浏览器重定向到Response2;
- 浏览器向Response2发出请求;
- 最终由Response2做出响应。
请求重定向的特点:
- 浏览器地址栏发生改变
- 两次请求
- 不共享Request域中的数据
- 不能访问WEB-INF下的资源
- 可以访问工程外的资源
代码: