<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # Servlet 中的`RequestDispatcher`方法 > 原文: [https://beginnersbook.com/2017/07/requestdispatcher-methods-with-examples-in-servlet/](https://beginnersbook.com/2017/07/requestdispatcher-methods-with-examples-in-servlet/) `RequestDispatcher`接口定義一個對象,該對象從客戶端接收請求并將其分派給資源(例如 servlet,JSP,HTML 文件)。該接口有以下兩種方法: `public void forward(ServletRequest request, ServletResponse response)`:它將請求從一個 servlet 轉發到另一個資源(例如 servlet,JSP,HTML 文件)。 `public void include(ServletRequest request, ServletResponse response)`:它包含響應中的資源內容(如 servlet,JSP,HTML 文件)。 ## `forward()`與`include()`方法的區別 為了理解這兩種方法之間的區別,讓我們舉一個例子:假設你有兩個頁面`X`和`Y`。在頁面`X `中你有一個`include`標簽,這意味著控制流將在頁面`X`中,直到它遇到包含標簽,之后控制流將被轉移到頁面`Y`。在頁面`Y`的處理結束時,控制流將返回到包含標簽之后的頁面`X`并保持在`X`直到結束。 **在這種情況下,客戶的最終回復將由`X`頁面發送。** 現在,我們正在采用相同的例子。我們有相同的頁面`X`和`Y`。在頁面`X`中,我們有轉發標簽。在這種情況下,控制流將在頁面`X`中,直到它遇到轉發,此后控制流將被轉移到頁面`Y`。這里的主要區別是控制流不會返回到`X`,它將在頁面`Y`中直到結束它的。 **在這種情況下,對客戶的最終回復將由`Y`頁面發送。** ## 例: 在這個例子中,我將使用`include`和`forward`兩種方法。使用`include`方法,我將更改當前頁面的內容,當我準備將控制流轉移到下一頁時,我將使用`forward`方法。 `index.html` ```java <form action="loginPage" method="post"> User Name:<input type="text" name="uname"/><br/> Password:<input type="password" name="upass"/><br/> <input type="submit" value="SUBMIT"/> </form> ``` `Validation.java` ```java import java.io.*; ? import java.io.*; ? import javax.servlet.*; ? import javax.servlet.http.*; ????? public class Validation extends HttpServlet { ??? public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { ???? ? response.setContentType("text/html"); ?? ? PrintWriter pwriter = response.getWriter(); ?? ? ? ? ??? ? String name=request.getParameter("uname"); ?? ? String pass=request.getParameter("upass"); ?? ? ? ? ??? ? if(name.equals("Chaitanya") && pass.equals("beginnersbook")) { ?? ? ? ? RequestDispatcher dis=request.getRequestDispatcher("welcome"); ?? ? ? ? dis.forward(request, response); ?? ? } ?? ? else { ?? ? pwriter.print("User name or password is incorrect!"); ?? ? ? ? RequestDispatcher dis=request.getRequestDispatcher("index.html"); ?? ? ? ? dis.include(request, response); ?? ? ? ? ? ? ? ? ? ? ??? ? ? ? } ?? ? } ??? } ? ``` `WelcomeUser.java` ```java import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class WelcomeUser extends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter pwriter = response.getWriter(); String name=request.getParameter("uname"); pwriter.print("Hello "+name+"!"); pwriter.print(" Welcome to Beginnersbook.com"); } } ``` `web.xml` ```java <web-app> <display-name>BeginnersBookDemo</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> </welcome-file-list> <servlet> <servlet-name>Login</servlet-name> <servlet-class>Validation</servlet-class> </servlet> <servlet> <servlet-name>Welcome</servlet-name> <servlet-class>WelcomeUser</servlet-class> </servlet> <servlet-mapping> <servlet-name>Login</servlet-name> <url-pattern>/loginPage</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>Welcome</servlet-name> <url-pattern>/welcome</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.html</welcome-file> </welcome-file-list> </web-app> ``` **輸出:** 輸入錯誤的憑據: ![](https://img.kancloud.cn/5a/c4/5ac41324efa4deae1821d02095f7469b_1024x199.jpg) 錯誤屏幕: ![Error screen](https://img.kancloud.cn/68/e9/68e91d0a74792294adf86428734deace_1024x230.jpg) 輸入正確的用戶名和密碼時歡迎屏幕: ![Welcome screen](https://img.kancloud.cn/e2/b1/e2b12574a8740f342f9625566b7a785b_1024x185.jpg)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看