SSH三大框架的搭建整合(struts2+spring+hibernate)
SSH說的上是javaweb經典框架,不能說100%要會SSH框架,但是大部分公司都在用,說到框架,都會提到ssh吧,這次就以很簡單的註冊例子來整合SSH框架。整合框架要注意的是先每個框架單獨測通後再整合,不然整合後出現問題比較難排查。
環境:windows + MyEclipse + JDK1.7 + Tomcat7 + mysql
程式碼已經測通,如果有報錯可能是我某些地方沒描述清楚,請留言。
**
Struts2.3
**
1、匯入jar包
2、配置web.xml
3、建立js頁面
4、建立action類
5、配置struts.xml檔案
到這裡struts2配置完類,在和整合spring前,先單獨測試struts2是否正確執行。然後配置spring以及整合struts2
Spring
1、匯入jar包
2、在web.xml新增spring支援(監聽器)
3、在src目錄下新增applicationContext.xml檔案 管理Action物件的建立
將action的建立交給spring管理,
spring 預設scope 是單例模式,這樣只會建立一個Action物件,
而Action要求每次訪問都要建立新的Action ,scope=”prototype”就可以保證每次有新的訪問都會建立新的action。保證每一個請求有一個單獨的Action來處理,避免struts中Action的執行緒安全問題。
4、修改struts.xml中action引用的類地址,改為在spring中建立action物件的id,這樣才真正是把action物件交給spring建立。
和struts2配置的第5步比較
hibernate
1、匯入jar包
2、建立實體類
…
get/set方法
…
3、對映檔案User.hbm.xml 在同一個包下建立對映檔案,命名格式entity.hbm.xml
配置資訊
4、建立dao層、service層(基本的增刪改查用於測試)
PS. 說明:Dao實現類繼承了hibernateDaoSupport後可以直接獲取session,不需要sessionFactory。
5、action層中在前面配置struts2的基礎上,增加業務程式碼(增刪改查)
對於userService的獲取有兩種方式:
get/set方式
註解方式
6、在applicationContext.xml配置檔案配置整合資訊
A、(如果使用類註解方式,則需要開啟註解掃描)
B、建立Action物件,userService物件,userDao物件
Ps.我這裡userDao是get/set方式,Action,userService是註解方式
C、資料庫連線(整合spring-hibernate,我是原來的hibernate配置檔案寫到spring中)
不需要再資料庫建表,只要保證有對應的資料庫即可,
Ps.資料庫的連線資訊沒有寫死到程式碼中,而是用db.properties配置再倒入,好處是隨時更換資料庫
db.properties資料
這裡hibernate其實已經配好而且整合到spring裡面去了,沒有單獨測試,直接用網頁測試。
PS.如果整合順序是hibernate – spring – struts2 會不會合理些?