1. 程式人生 > >轉發以及重定向(包含後臺介面中是否有return語句分析)

轉發以及重定向(包含後臺介面中是否有return語句分析)

重定向與轉發

轉發:RequestDispatcher介面(再使用forward方法實現轉發)

重定向:HttpServletResponse介面(用sendRedirect方法實現重定向)

本質區別:轉發只發送了一次請求,而重定向則傳送了兩次請求

具體分析:①請求轉發:在位址列處請求地址沒有發生改變,還是初次發出請求的地址

請求重定向:在位址列處請求地址發生改變

②請求轉發:在最終的servlet中,request物件和中轉的request是同一個物件

請求重定向:在最終的servlet中,若quest物件和中轉的request不是同一個物件。

應用場景:如果在進行查詢操作的時候,我們應該使用轉發操作,速度快

如果在進行增、刪、改操作的時候,我們應該使用重定向操作,如果此種情況採用轉發進行操作,在操作前後URL位址列資訊不發生改變,仍然是修改的控制器,如果此時再對當前頁面重新整理的話,就會重新發送一次請求對資料進行修改,這也就是有的人在重新整理一次頁面就增加一條資料的原因。

後臺介面中是否有return語句分析

通過以上分析得知,我們在增、刪、改操作中使用重定向,在查詢操作中我們使用轉發操作,那麼由此分析後臺介面中增、刪、改操作並不需要有返回值,所以沒有return語句,進而言之,查詢操作中需要有返回值,所以使用return語句