2013-10-04 64 views
0

我在搞亂Java2EE Servlets和JSP,當生成的HTML代碼發送到Web瀏覽器時,我仍然感到困惑。我實現了FrontController模式,因此用戶請求被控制器servlet(FC)攔截,它根據請求打包的命令發現,正在請求什麼jsp頁面,並使用request.getRequestDispatcher(path).forward(request, response); 轉發請求和響應然後我猜測會生成幾行動態設置的數據,這些數據是通過forward方法傳回的請求而被回收的,並返回給瀏覽器?什麼時候回覆給瀏覽器

我想這不是正確的方式它是如何工作的,它只是我如何看待它,所以有人可以糾正我可能寫整個過程,並解釋getRequestDispatcher(path).forward(request, response);的確切目的?

在此先感謝!

回答

1

轉發包括說:我已完成了我的工作,讓組件生活在path完成剩下的工作。

Servlets(控制器)擅長讀取和驗證參數,調用業務邏輯並創建Java Bean實例(模型)。他們吮吸在生成HTML代碼。

JSP(視圖)非常適合使用存儲在Java bean中的數據動態生成HTML代碼,但它們不擅長執行業務邏輯。

因此,請求首先由servlet處理,servlet讀取並驗證參數,調用業務邏輯,獲取數據並將其存儲爲存儲爲請求屬性的Java Bean。然後servlet將請求和響應轉發給JSP,JSP生成HTML並將其寫入響應寫入器。而寫入響應寫入器的內容則發送到瀏覽器。

+0

很好的解釋,謝謝! – Husky

相關問題