zoukankan      html  css  js  c++  java
  • java重定向与请求转发

    重定向是不能直接访问WEB-INF下的资源的,因为重定向是浏览器二次请求,众所周知,客户端是不能直接访问WEB-INF下的资源的。

    而请求转发却可以直接访问。

    然而重定向却可以间接访问WEN-INF下的资源,如下所示:

     1 /**
     2     客户端访问这个Servlet,然后可以重定向到另一个Servlet,另一个Servlet请求转发到 WEB-INF 下的资源,以实现重定向的目的   */
     3     @Override
     4     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
     5         resp.setContentType("text/html;charset=utf-8");
     6         PrintWriter out = resp.getWriter();
     7         out.println("hello world...");
     8         req.getSession().setAttribute("name","java");
     9         resp.sendRedirect("hello");//hello是另一个Servlet的访问url
    10     }
    11 
    12     @Override
    13     protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    14         super.doPost(req, resp);
    15     }

    附两张图,一边理解

    重定向

    请求转发

    forward是内部重定向,而redirect是外部重定向

  • 相关阅读:
    [转]创建节约内存的JavaBean
    TCP协议
    redis常用命令
    Windows&Linux常用命令笔记
    二叉树学习笔记
    云计算入门
    redis主从切换
    spring 异步处理request
    ibatis工作原理
    工作了3年的JAVA程序员应该具备什么技能?(转)
  • 原文地址:https://www.cnblogs.com/caotao0918/p/10756626.html
Copyright © 2011-2022 走看看