重定向与请求转发

  • 请求转发是一次请求一次响应,而重定向是两次请求两次响应。
  • 请求转发地址栏不会变化的,重定向地址栏发生变化。

  • 请求转发路径不带工程名,重定向需要带工程名路径。

  • 请求转发只能在本网站内部,重定向可以定向到任何网站。

  • 请求转发:request.getRequestDispatcher("/urlPattern").forward(request, response);
  • 重定向:response.sendRedirect("/ProjectName/urlPattern");
    • 如果需要使用request进行值传递,需要通过请求转发完成。

    • 如果页面需要跳转到其他网站上必须使用重定向, 不能使用request进行值传递。

  • Request作为域对象作用范围

    Request对象其实就是从客户端浏览器向服务器发送的一次请求信息的封装。那么实质上向Request中所保存的数据有效期也是一次请求范围。

    一次请求范围:从客户端浏览器向服务器发送一次请求,服务器针对这次请求对浏览器作出响应。当服务器作出响应之后,请求对象就销毁了,保存在其中的数据就无效了。

    每次请求都会创建新的request对象, 当响应结束后立刻销毁request对象.

posted @ 2020-12-09 22:28  mty072788  阅读(170)  评论(0编辑  收藏  举报