Servlet Request 请求转发

时间:2021-08-27 15:28:52

request.getRequestDispatcher("logined.jsp").forward(request, response);    //登录用户在登录页面验证通过,跳转到登录成功页面。 在Servlet层处理

request.getRequestDispatcher("login.jsp").forward(request, response);        //登录用户在登录页面验证未通过,转发到登录页面。

1 转发在服务器端发挥作用,指在服务器内部控制权的转移,请求转发是指将请求再转发到另一个资源(一般为JSP或Servlet),RequestDispatcher(接口)通过forward()方法将请求提交的信息在多个页面间进行传递。该方法可以把请求转发到另一个资源,并让该资源对浏览器的请求响应。

RequestDispatcher rd=request.getRequestDispatcher(path);  rd.forward(request, response); request.getRequestDispatcher(path).forward(request, response);

2 forward()方法只能将请求转发给同一个WEB应用中的组件,而调用forward()方法的请求转发过程结束后,浏览器地址栏保持初始的URL地址不变。forward()方法的调用者与被调用者之间共享相同的request, response对象。