想要了解Servlet转发机制的可以点击关于转发机制的解释
想要了解Servlet转发和重定向区别点击解析Servlet中【转发机制和重定向】的区别
首先来看看完整的重定向代码:
response.sendRedirect("路径");
路径:resquest.getContextPath()+"web.xml中定义的需要跳转资源的url"
resquest.getContextPath()获取到的是资源的项目名
所以重新整合为一段代码为:
response.sendRedirect(resquest.getContextPath()+"web.xml中定义的需要跳转资源的url");
response对象将将其中的路径重新响应给浏览器,浏览器接收到响应的信息之后,就会自发的向服务器发起一次新的请求,请求路径就是以上代码中的路径。
假设浏览器:
第一次发送的请求的url为/Servlet/A
需要跳转的资源的url为/Servlet/B
则浏览器一共发送了两次请求:
第一次请求:htto://localhost:8080/Servlet/A
第二次请求:htto://localhost:8080/Servlet/B
最终浏览器地址栏上显示的地址为最后一次请求的地址,所以重定向会导致浏览器地址栏上的地址发生改变。