本文共 833 字,大约阅读时间需要 2 分钟。
方式1: 请求转发(forward).
方式2: URL重定向(redirect).
方式3: 请求包含(include).
从Servlet1,请求转发到Servlet2.
Servlet1完成一部分的功能,再跳转到Servlet2,继续完成剩下的功能.
request.getRequestDispatcher(String path).forward(request,response);
path,表示跳转的目标的路径(资源的名称).
注意:别忘了forward.
--------------------------------------------------------------
1:浏览器地址栏不发生改变,依然是/forward/s1,不是目标地址(/forward/s2).
2:请求转发只发送一个请求. 3:共享同一个请求中的数据. 4:最终响应给浏览器的由Servlet2来决定. 5:请求转发不能跨域访问,只能跳转到当前应用中的资源. 6:请求转发可以访问WEB-INF目录中的资源.
response.sendRedirect(String url);
url,表示目标资源地址
--------------------------------------------------------------
1:浏览器地址栏发生改变,从/redirect/s1,变成目标地址(/redirect/s2).
2:URL重定向发了两次请求. 3:因为URL重定向是两次独立的请求,所以不共享请求中的数据. 4:最终响应给浏览器的由Servlet2来决定(把目标地址拷贝到浏览器地址栏,敲回车). 5:URL重定向能跨域访问,可以访问其他应用中的资源. 6:URL重定向不能访问WEB-INF目录中的资源.