请求转发:RequestDispatcher的forward(request, response)方法称做请求转发,此方法通过ServletRequest接口方法中的getRequestDispatcher返回类型为RequestDispatche的对象,然后调用调用RequestDispatcher的forward(request, response),进行页面的转移。整个过程处于同一个请求当中。
重定向:HttpServletResponse 对象的 sendRedirect(String location)方法称作重定向。如果 location 地址前面加上“/”,则表示相对于 Servlet容器的根来请求,http://localhost:8080,如果location地址前没有加上“/”,则表示相对于当前请求的 URI来寻找地址。
重定向实际上客户端会向服务器端发送两个请求。sendRedirect()是 HttpServletResponse 对象的方法,即响应对象的方法,既然调用了响应对象的方法,那就表明整个请求过程已经结束了,服务器开始向客户端返回执行的结果。