什么是请求转发
AServlet操作完毕之后,请求转发到BServlet,继续完成余下的功能.
语法:
request对象.getRequestDispatcher(String path).forward(request,response);
参数:
path:表示目标资源名称
什么是URL重定向
AServlet操作完毕之后,重定向到BServlet,继续完成余下的功能.
语法:
response对象.sendRedirect(String path);
参数:path,表示目标资源名称.
区别
- 请求转发地址栏没有发生改变,url重定向改变了地址栏
- 请求转发可以共享参数,url重定向不会共享参数
- 请求转发不可以跨域访问,但是可以访问WEB-INF中的资源,url重定向可以跨域访问,但是不能访问WEB-INF中的资源
- 请求转发只发送了一个请求,url重定向发送了两个请求
- 响应输出的方式一致