| 企服解答
double整合框架包括spring+hibernate、pring+struts、spring+mybatis。
double框架是什么
1、spring+hibernate
spring+hibernate整合的思路就是不再使用hibernate的配置文件,而是通過(guò)spring注入的方式,連接數(shù)據(jù)庫(kù),配置hibernate。通過(guò)dao層繼承hibernateTemplate這個(gè)類(lèi),這個(gè)類(lèi)提供setSessionFactory方法,在spring中,給dao層注冊(cè)一個(gè)bean,并注冊(cè)一個(gè)bean,配置好hibernate需要的配置信息 ,并將這個(gè)bean注入到dao中的sessionFactory屬性中。使用時(shí)獲取該bean,因?yàn)閐ao繼承了這個(gè)類(lèi),使用時(shí)可以直接通過(guò)dao調(diào)用save、get、update、dalete等方法完成操作數(shù)據(jù)庫(kù)。
2、pring+struts
對(duì)于struts來(lái)說(shuō),我們最關(guān)注的是action的生命周期,spring+struts的整合思路就是struts的action交給你spring來(lái)管理。而spring配置的加載是通過(guò)web.xml中的監(jiān)聽(tīng)器讀取jar包,來(lái)加載該配置文件,注冊(cè)好bean之后,在struts中聲明它的對(duì)象工廠交給spring來(lái)管理。則該bean就可以用作struts的action來(lái)使用了。這里舉例說(shuō)明訪問(wèn)一個(gè)action,跳轉(zhuǎn)后臺(tái)方法,獲取查詢(xún)數(shù)據(jù),返回jsp展示數(shù)據(jù)的過(guò)程。
3、spring+mybatis
spring+mybatis的整合就比較有意思了,而且也比較常見(jiàn)。整合思路是原本mybatis的配置文件所做的事情,通過(guò)spring來(lái)完成注入,并通過(guò)注入SqlsessionFactory的方式,加載mybatis的配置文件。并通過(guò)注入一些整合相關(guān)的屬性值,完成double整合。
| 拓展閱讀
Double框架中的微服務(wù)包括了服務(wù)發(fā)布與引用、服務(wù)注冊(cè)與發(fā)現(xiàn)、服務(wù)調(diào)用、服務(wù)治理。
1、服務(wù)發(fā)布與引用
服務(wù)發(fā)布與引用的三種常用方式:RESTful、XML配置以及IDL文件。Double主要采用XML配置方式。
2、服務(wù)注冊(cè)與發(fā)現(xiàn)
基于擴(kuò)展點(diǎn)自適應(yīng)機(jī)制,通過(guò)URL的"registry://"協(xié)議頭識(shí)別,就會(huì)調(diào)用RegistryProtocol的export()方法,將export參數(shù)中的提供者URL,注冊(cè)到注冊(cè)中心。服務(wù)消費(fèi)者發(fā)現(xiàn)服務(wù)的過(guò)程,以前面服務(wù)消費(fèi)者的XML配置為例,其中"dubbo://registry"開(kāi)頭的配置項(xiàng)聲明了注冊(cè)中心的地址,跟服務(wù)注冊(cè)的原理類(lèi)似。
3、服務(wù)調(diào)用
Dubbo支持多種通信框架,比如Netty4,需要在服務(wù)端和客戶(hù)端的XML配置中添加下面的配置項(xiàng)。
4、服務(wù)監(jiān)控
主要包括四個(gè)流程:數(shù)據(jù)采集、數(shù)據(jù)傳輸、數(shù)據(jù)處理和數(shù)據(jù)展示,其中服務(wù)框架的作用是進(jìn)行埋點(diǎn)數(shù)據(jù)采集,然后上報(bào)給監(jiān)控系統(tǒng)。
5、服務(wù)治理
包括節(jié)點(diǎn)管理、負(fù)載均衡、服務(wù)路由、服務(wù)容錯(cuò)等。
[免責(zé)聲明]
文章標(biāo)題: double框架是什么
文章內(nèi)容為網(wǎng)站編輯整理發(fā)布,僅供學(xué)習(xí)與參考,不代表本網(wǎng)站贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé)。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)溝通。發(fā)送郵件至36dianping@36kr.com,我們會(huì)在3個(gè)工作日內(nèi)處理。