學(xué)習(xí)mybatis的第一天

什么是mybatis框架:

mybatis屬于三層架構(gòu)中的持久層框架,直接與數(shù)據(jù)庫(kù)相互聯(lián)系肉拓,主要為Dao接口,(DAO:數(shù)據(jù)訪問(wèn)層暖途,Data Acess Object)

如圖所示:


三層架構(gòu)

mybatis的環(huán)境搭建:

①、創(chuàng)建maven工程并導(dǎo)入jar包的坐標(biāo)驻售;

②、創(chuàng)建實(shí)體類(lèi)和dao接口欺栗;

③、創(chuàng)建mybatis的主配置文件 迟几;

④、創(chuàng)建映射配置文件类腮,即每個(gè)dao獨(dú)立的配置文件;

環(huán)境搭建的注意事項(xiàng):

①蚜枢、一般在mybatis中,把持久層的操作接口名稱(chēng)和映射文件也叫:Mapper厂抽,所以一般取名為IUserMapper.xml,但為了和之前的知識(shí)保持一致贺辰,于是取名叫IUserDao.xml,所以以后看到IUserMapper.xml和IUserDao.xml其實(shí)是一樣的饲化。

②莽鸭、mybatis的映射配置文件位置必須和dao接口的包結(jié)構(gòu)相同吃靠。

③、映射配置文件的mapper標(biāo)簽namespace屬性的取值必須是dao接口的全限定類(lèi)名巢块。

④、映射配置文件的操作配置(select或update矾瘾、insert等)id屬性的取值必須是dao接口的方法名。

只有遵從了②③④之后越走,無(wú)需寫(xiě)dao實(shí)現(xiàn)類(lèi),直接定義接口即可廊敌。

mybatis的快速入門(mén):

1、讀取配置文件

2骡澈、創(chuàng)建SqlSessionFactorygong工廠(使用了構(gòu)建者模式,調(diào)用方法即可拿到對(duì)象

3肋殴、使用工廠生產(chǎn)出SqlSession對(duì)象(使用了工廠模式,解耦(降低類(lèi)依賴關(guān)系)

4疼电、使用SqlSession對(duì)象創(chuàng)建Dao接口的代理對(duì)象(使用了代理模式,增強(qiáng)方法蔽豺,不用創(chuàng)建實(shí)現(xiàn)類(lèi)

5、使用代理對(duì)象執(zhí)行Dao接口中的方法

6修陡、釋放資源


實(shí)現(xiàn)方式

注意事項(xiàng):

不要忘記在映射配置文件中告知mybatis要封裝到哪個(gè)實(shí)體類(lèi)中魄鸦,即resultType的屬性值要指定實(shí)體類(lèi)的全類(lèi)名宴杀。

*mybatis基于注解實(shí)現(xiàn)環(huán)境配置:

①拾因、把IUserDao.xml移除旷余,在dao接口的方法上使用@select注解,并且制定SQL語(yǔ)句正卧。(@update、@insert炉旷、......)

②、同時(shí)需要在SqlMapConfig.xml中的mappers中的mapper配置時(shí)窘行,使用class屬性指定dao接口的全類(lèi)名即可。

最后明確:

在實(shí)際的開(kāi)發(fā)中罐盔,都是越簡(jiǎn)便越好,所以都是采用不寫(xiě)dao實(shí)現(xiàn)類(lèi)的方式翘骂,不管使用注解還是xml進(jìn)行配置,都比寫(xiě)dao實(shí)現(xiàn)類(lèi)簡(jiǎn)潔太多太多,但是支持寫(xiě)dao實(shí)現(xiàn)類(lèi)草丧。

自定義mybatis的分析:


關(guān)于查詢所有的底層原理

其實(shí)mybatis在使用代理dao的方式實(shí)現(xiàn)增刪改查時(shí)只做了兩件事:

1、創(chuàng)建代理對(duì)象

2昌执、在代理對(duì)象中調(diào)用selectList方法





最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末懂拾,一起剝皮案震驚了整個(gè)濱河市煤禽,隨后出現(xiàn)的幾起案子岖赋,更是在濱河造成了極大的恐慌,老刑警劉巖唐断,帶你破解...
    沈念sama閱讀 211,042評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異脸甘,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)丹诀,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門(mén)翁垂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)硝桩,“玉大人沿猜,你說(shuō)我怎么就攤上這事亿柑。” “怎么了望薄?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,674評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)痕支。 經(jīng)常有香客問(wèn)我,道長(zhǎng)卧须,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,340評(píng)論 1 283
  • 正文 為了忘掉前任笋籽,我火速辦了婚禮,結(jié)果婚禮上车海,老公的妹妹穿的比我還像新娘。我一直安慰自己隘击,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,404評(píng)論 5 384
  • 文/花漫 我一把揭開(kāi)白布州叠。 她就那樣靜靜地躺著,像睡著了一般咧栗。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上楼熄,一...
    開(kāi)封第一講書(shū)人閱讀 49,749評(píng)論 1 289
  • 那天浩峡,我揣著相機(jī)與錄音可岂,去河邊找鬼翰灾。 笑死缕粹,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的平斩。 我是一名探鬼主播,決...
    沈念sama閱讀 38,902評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼绘面,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了揭璃?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,662評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤歼秽,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后燥筷,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,110評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡肆氓,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年底瓣,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了做院。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片濒持。...
    茶點(diǎn)故事閱讀 38,577評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡寺滚,死狀恐怖柑营,靈堂內(nèi)的尸體忽然破棺而出村视,到底是詐尸還是另有隱情官套,我是刑警寧澤蚁孔,帶...
    沈念sama閱讀 34,258評(píng)論 4 328
  • 正文 年R本政府宣布,位于F島的核電站杠氢,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏鼻百。R本人自食惡果不足惜摆尝,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,848評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望堕汞。 院中可真熱鬧,春花似錦讯检、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,726評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)挡毅。三九已至,卻和暖如春暴构,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背取逾。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,952評(píng)論 1 264
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留砾隅,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,271評(píng)論 2 360
  • 正文 我出身青樓晴埂,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親儒洛。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,452評(píng)論 2 348