首页 > 其他 > 详细

请求转发与重定向

时间:2020-08-07 22:22:18      阅读:88      评论:0      收藏:0      [点我收藏+]

请求的转发

  语法格式:

    request.getRequestDispatcher(URL地址).forward(request, response);

  实现代码:

1 public class OneServlet extends HttpServlet {
2     protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
3         doGet(request, response);
4     }
5  
6     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
7         //请求转发到index.jsp      request.getRequestDispatcher("/index.jsp").forward(request,response);
8     }
9 }

重定向:

  语法格式为:

    response.sendRedirect(URL地址);

    response.sendRedirect(request.getContextPath() + URL地址);

  实现代码:

 1 public class OneServlet extends HttpServlet {
 2     protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 3         doGet(request, response);
 4     }
 5  
 6     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 7         //重定向到index.jsp
 8         response.sendRedirect("/index.jsp");
 9     }
10 }

转发和重定向的区别:

  请求转发:

    在服务器内部完成,用户感知不到,浏览器地址栏不变,整个过程浏览器只发出了一个请求,目标资源可以在WEB-INF目录下。

  重定向:

    服务器以302状态码通知浏览器访问新地址,浏览器地址栏改变,整个过程浏览器发出两次请求,目标资源不可以在WEB-INF目录下。

 

请求转发与重定向

原文:https://www.cnblogs.com/ShiQi521/p/13455148.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!