SSH MVC的關係

一、

M 模型層 hibernate 處理我們的業務bean與數據庫交互 把數據庫變爲我們能夠使用的java實體類去操作 數據模型

Struts 控制器 C 處理請求 及跳轉 找到對應的業務bean進行處理 根據結果返回
由jsp頁面的的訪問就可以看出 .do .action 對應的都是action的請求路徑 那麼struts纔是控制器,由struts的控制器你才能找到對應的ACtionBean 不就是控制嘛
Spring呢 具體來說不在這其中 只不過做解耦 就是控制反轉或者叫依賴注入用的
是個什麼概念呢 傳統的Serviet需要我們new 一些個對象才能使用 那麼有N多的servlte呢 就需要你new N次 但是如果你的對象類一旦改變了呢 那你是不需要改N個servlet呢?
當然這個new的本身也就是非常麻煩的,我們用spring呢 定義成一個bean 那麼有需要的地方就可以set進去了 就叫注入 改變原來的類 只需要在spring裏去改配置就可以
當然你的業務bean 從spring代理裏獲取到對象 不需要我們去找對象new 減少了耦合
V 是視圖層 就是跟用戶打交道的 常用的就是jsp html 等還有現在很多的UI

這個是在很長一個時段內使用的 傳統mvc ssh
現在呢 Spring 在3.0之後呢 集成了mvc的功能 也可以做M 也可以做C 了 是方便了 但是畢竟還不流行

所以傳統上講你上面說的是很顛倒的!

二、

MVC只是三層架構思想的一種設計模式,而SSH架構只是MVC模式實現的一種工具而已。

struts—》spring--》hibernate

這樣就很明確了,structs請求,給spring處理,將結果返回給hibernate做持久化
發過來,hibernate將底層數據取出來,交給spring,由spring處理,將結果返回客戶端struts

三、action 是Struts的控制層 service是mvc中的服務層,model是java實體bean,dao是與數據庫進行交互持久層,ssh中由Hibernate實現。

jsp傳參數給action action調用service service調用dao 他們相互調用的時候傳遞的參數就是model

      Struts負責前臺與後臺之間數據的傳遞、後臺完成邏輯操作之後頁面的跳轉,後臺每層之間的調用通過Spring進行類注入,在service中對model做出邏輯操作,然後傳遞給dao,在dao層中用Hibernate對數據庫進行持久化操作,根據需求,是否應有返回值。最後到action中進行頁面跳轉。
      大概就這樣吧,至於圖片的話,百度上應該很多,不懂了可以追問,希望能幫到你。

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