更新時(shí)間:2020-04-30 14:58:53 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2912次
SSH三大框架的整合思想
1.web應(yīng)用的三層為:
1.1web層,(struts2),Struts2框架用的最多的是action
1.2service層(spring),spring中用的最多的是IoC和AOP,把對(duì)象的創(chuàng)建交給Spring進(jìn)行管理
1.3dao層(hibernate),hibernate則是用來(lái)操作數(shù)據(jù)庫(kù),進(jìn)行CRUD
2.哪么這三個(gè)框架應(yīng)該是如何整合呢?
思想是兩兩整合:
2.1struts2和Spring進(jìn)行整合
2.1.1在struts中action的創(chuàng)建交給Spring進(jìn)行創(chuàng)建,但是要注意action是多實(shí)例的。
2.1.2要注意導(dǎo)入spring整合Struts2的jar包
2.2hibernate和Spring進(jìn)行整合
2.2.1hibernate中的核心類是SessionFactory,這里要把SessionFactory的創(chuàng)建交給Spring進(jìn)行管理
2.2.2Hibernate的核心文件中進(jìn)行了數(shù)據(jù)庫(kù)信息的配置,這里也要交給Spring進(jìn)行處理
2.2.3為Dao對(duì)象配置持久層的Spring提供的Template
2.2.4注意導(dǎo)入Spring整合DAO層的ORM包
總結(jié)
1.能不new就不new出來(lái)
整個(gè)項(xiàng)目配置下來(lái)發(fā)現(xiàn)基本上是Spring掌控一切了,你要什么從我這里來(lái)拿行了,別自己(這里指的是Struts2和Hibernate)折騰。小項(xiàng)目這樣感覺沒(méi)有問(wèn)題,但是模塊變多的時(shí)候,豈不是顯得Spring很臃腫?還是Spring可以通過(guò)引入其他的bean配置文件來(lái)分擔(dān)配置。
2.配置集中化
這里配置的集中化主要是體現(xiàn)在將Struts2和Hibernate中的核心配置往Spring中轉(zhuǎn)移,比如最明顯的就是Action和SessionFactory的配置。
3.動(dòng)別人的核心配置就要加jar包
比如Struts2中對(duì)Action的配置是要找到Action的全路徑的,但是,在整合之后只用加入一個(gè)Spring中國(guó)配置的id就可以了,試想如果不搞事情,Strut2一讀Action的class中的值,絕逼報(bào)找不到類,所以我們?cè)谶@里加入了一個(gè)Spring整合Spring的jar包;另外,Hibernate中Sessionfaction的創(chuàng)建是要讀取Hibernate的核心配置文件的,直接在Spring中配置SessionFactory實(shí)例也做不到,因此也導(dǎo)入了Spring整合ORM持久層的jar包,并配置了相關(guān)的參數(shù)。
4.通過(guò)IoC解耦
像Spring這樣一整合,確實(shí)有利于解耦合。
5.對(duì)數(shù)據(jù)庫(kù)的配置思路是,先獲取其連接池對(duì)象,再指定SessionFactory的時(shí)候,只需要給它注入連接池就可以了
以上就是動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“Java基礎(chǔ)學(xué)習(xí):ssh框架教程整合思想”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問(wèn),請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)