通過Servlet理解MVC框架的基本實現原理

一.概述

SSH從持久層---業務邏輯層---UI層結構

這裏寫圖片描述
B/S與C/S最主要的區別在於分發方面。

二.通過Servlet講解MVC框架的基本實現原理
servlet裏需要參數,轉換類型,處理業務邏輯和寫死跳轉頁面,而且取得參數都是字符串。
這裏採用框架自動轉換參數類型,配置頁面,使得開發更靈活。
這裏學會struts的開發模式與思想,其他的框架上手就容易了。

1.struts只能應用在wb項目中,普通的java程序struts應用不了。故這裏建立Dynamic web project;
window-preference-web-jsp-更改encoding爲”Chinese,National Startard”。

2.在WebContent下建立jsp頁面,在servlet中接收參數並調用UserManager的方法、跳轉到成功頁面add_success.jsp。
對於servlet路徑問題,可以考慮改爲*.do,則任何以.do爲結尾的路徑都會自動跳轉到該servlet頁面。
實現CRUD:
<1>採用command方式,加上?command=XXX。
<2>攔截每次請求的url,根據url截取,進行判斷邏輯和轉向。
但servlet的if-else語句太多,不靈活擴展性不強,冗餘性太強;而且if不穩定。

諸如判斷邏輯這些 基礎性服務 可以單獨抽取出來,抽取成一個接口,完成這個功能。

三.諸如Struts這種成熟的MVC框架要實現的功能
1.前段控制器(中央控制器)TestServlet:根據相應的規則截取URL、根據URL分發到相應的action。
2.業務控制器XxxxAction:參數的獲取、業務邏輯(模型層)的調用、把轉向信息給中央控制器,由中央控制器完成轉向。
這裏寫圖片描述

MVC框架的時序圖
web客戶端(瀏覽器)發送request請求到tomcat服務器,tomcat是servlet容器,可以運行servlet。服務器找到相應的前端控制器servlet,其中request包裝了客戶端數據,response包裝了返回的數據。

在這種MVC框架中都有action的概念,通常一個請求一個動作都對應一個action。

MVC模型主要起控制作用。
MVC模型的時序圖

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章