Jakarta ee 何时使用forward()、include()和sendRedirect()?

Jakarta ee 何时使用forward()、include()和sendRedirect()?,jakarta-ee,servlets,Jakarta Ee,Servlets,我是Java EE env新手,我读了很多课程来了解这三种方法之间的区别,但其中大多数都包含定义。。。我需要一个具体的例子何时使用这三种方法中的每一种? sendRedirect() 前进() 包括() 以下几点可能有助于您了解何时使用哪种方法: sendRedirect() 这在客户端有效。 它总是发送新请求。 它可以在服务器内外使用 示例:response.sendRedirect(“servlet2”) 前进() forward()方法在服务器端工作。 它将相同的请求和响应对象发送到另一

我是Java EE env新手,我读了很多课程来了解这三种方法之间的区别,但其中大多数都包含定义。。。我需要一个具体的例子何时使用这三种方法中的每一种?

  • sendRedirect()
  • 前进()
  • 包括()

    • 以下几点可能有助于您了解何时使用哪种方法:

      sendRedirect()

      这在客户端有效。
      它总是发送新请求。
      它可以在服务器内外使用
      示例:response.sendRedirect(“servlet2”)

      前进()

      forward()方法在服务器端工作。
      它将相同的请求和响应对象发送到另一个servlet。
      它只能在服务器中工作。
      示例:request.getRequestDispacher(“servlet2”).forward(请求,响应)

      include()

      include方法用于在翻译阶段包含文件。
      include指令的一个很好的例子是包含一个具有多页内容的公共页眉和页脚。
      或在输入无效的登录详细信息时加载相同的登录页面


      以下几点可能有助于您了解何时使用哪种方法:

      sendRedirect()

      这在客户端有效。
      它总是发送新请求。
      它可以在服务器内外使用
      示例:response.sendRedirect(“servlet2”)

      前进()

      forward()方法在服务器端工作。
      它将相同的请求和响应对象发送到另一个servlet。
      它只能在服务器中工作。
      示例:request.getRequestDispacher(“servlet2”).forward(请求,响应)

      include()

      include方法用于在翻译阶段包含文件。
      include指令的一个很好的例子是包含一个具有多页内容的公共页眉和页脚。
      或在输入无效的登录详细信息时加载相同的登录页面


      何时使用此方法

      发送重定向

      当您希望客户端启动不完全依赖于上一个操作的全新请求时

      前进

      这是服务器端处理,在客户端没有指示。 有两个条件 第一:请求被完全处理并转发给像JSP这样诱人的技术来生成视图。 第二:请求需要由另一个Servlet进一步处理,该Servlet将决定最终输出

      包括

      这可用于将请求发送到另一个servlet进行额外处理,但最终输出由当前servlet决定


      希望这有帮助

      何时使用此方法

      发送重定向

      当您希望客户端启动不完全依赖于上一个操作的全新请求时

      前进

      这是服务器端处理,在客户端没有指示。 有两个条件 第一:请求被完全处理并转发给像JSP这样诱人的技术来生成视图。 第二:请求需要由另一个Servlet进一步处理,该Servlet将决定最终输出

      包括

      这可用于将请求发送到另一个servlet进行额外处理,但最终输出由当前servlet决定


      希望这有帮助

      response.sendRedirect(“servlet2”)方法将把您重定向到另一个servlet。i、 e
      servlet1-->servlet2

      您可以查看指示servlet2 url的url


      request.getRequestDispatcher(“servlet2”).include(请求,响应)
      方法将包括servlet2页面和servlet1页面。i、 e在servlet1本身中,您可以查看两个servlet的

      您可以注意到显示servlet1的url的url


      request.getRequestDispatcher(“servlet2”).forward(请求,响应)
      方法将在servlet1页面中显示servlet2页面。i、 e在servlet1中,您正在查看servlet2。这就像转发servlet的

      您可以注意到显示servlet1的url的url


      一般来说,请求分派器属于HttpServletRequest,sendRedirect属于HttpServletResponse dispatcher在客户端维护
      sendRedirect在服务器端维护

      response.sendRedirect(“servlet2”)方法将把您重定向到另一个servlet。i、 e
      servlet1-->servlet2

      您可以查看指示servlet2 url的url


      request.getRequestDispatcher(“servlet2”).include(请求,响应)
      方法将包括servlet2页面和servlet1页面。i、 e在servlet1本身中,您可以查看两个servlet的

      您可以注意到显示servlet1的url的url


      request.getRequestDispatcher(“servlet2”).forward(请求,响应)
      方法将在servlet1页面中显示servlet2页面。i、 e在servlet1中,您正在查看servlet2。这就像转发servlet的

      您可以注意到显示servlet1的url的url


      一般来说,请求分派器属于HttpServletRequest,sendRedirect属于HttpServletResponse dispatcher在客户端维护 sendRedirect在服务器端维护