spring+struts+hibernate (ssh)開發梳理

如下僅表明初學者的觀點,拍磚請輕點

spring 經過IOC 對beans的管理,即由spring對java中的類建立實例以及銷燬的管理,實現必定程度的解耦。
struts 是很是完善的mvc框架,必定成都上面實現modle view control 分離。
hibernate beans(class)和關係數據庫的映射,令人可以從繁瑣的sql語句中解脫出來。

1.每個ssh框架單獨使用均可以照葫蘆畫瓢,但整合可能會花很大的時間

 spring structs hibernate 每個框架的使用可能都會有不少配置文件,整合使用須要將這些配置文件進行整合。

整合的原理:
1.spring 的原始配置不須要改變
2.spring 管理原hibernate 的相應配置文件
3.spring 管理structs action類,structs配置文件原來的action配置class路徑屬性,由原對應的類完整路徑變爲spring配置文件裏面的beans id。 

2.項目組織層次
view->model(entity)-> action->service->DAO

1.view 是視圖即用戶能夠看到的界面。
2.model(entity)即實體創建模型 ,也就是實體類,和關係數據庫表一一對應
3.action 即控制層,經過filter實現url導向具體的服務(services)
4.service 即業務層,面向實現具體功能,每一個功能的實現都是由具體的DAO函數注入
5.DAO 即數據操做層,面向具體DB的具體數據操做,不會包含具體的業務邏輯,如add、delete、update、find等等

3.相關類和數據表設計
1.model(entity) 符合傳統的java beans 規範
2.services 和 dao  採用面向接口設計,即設計出來相應的接口底層統一使用
3.數據表和hibernate的對應,hibernate雖然能夠完善的映射到相應的數據庫,可是完善配置參數比較複雜。應當直接定義相應的數據表結構,同時配置相應的映射。這裏的映射只用來數據操做時使用,而數據結構的定義不直接使用hibernate映射。這裏須要特別注意數據鎖的設置粒度(通常時面向業務層(具體功能),即services)。java

相關文章
相關標籤/搜索