mybatis的介紹
文章出處:http://m.coolbang.cn 作者:興邦開(kāi)發(fā)部 人氣: 發(fā)表時(shí)間:2016年02月22日
[文章內(nèi)容簡(jiǎn)介]:介紹mybatis的使用
mybatis簡(jiǎn)介
mybatis是什么
mybatis的作用
mybatis的作用
mybatis怎么用
mybatis優(yōu)缺點(diǎn)
mybatis和hibernate對(duì)比
mybatis是什么:
mybatis是數(shù)據(jù)映射器(數(shù)據(jù)映射器層:用于在對(duì)象和數(shù)據(jù)庫(kù)之間搬運(yùn)數(shù)據(jù),同時(shí)保證對(duì)象、數(shù)據(jù)庫(kù)和數(shù)據(jù)映射器層本身相對(duì)獨(dú)立。Martin Fowler 《企業(yè)應(yīng)用架構(gòu)模式》)
mybatis不是直接把類(lèi)映射為數(shù)據(jù)庫(kù)表,而是把sql語(yǔ)句的參數(shù)與結(jié)果(即輸入與輸出)映射為類(lèi)。為如何在類(lèi)和數(shù)據(jù)庫(kù)間建立映射帶來(lái)了更大的靈活性。同時(shí)也更好的隔離了數(shù)據(jù)庫(kù)設(shè)計(jì)和應(yīng)用程序中使用的對(duì)象模型。
mybatis的作用:
mybatis是三層架構(gòu)中數(shù)據(jù)持久層的框架。
mybatis對(duì)sql進(jìn)行了封裝和外部化,使sql從應(yīng)用程序代碼中分離出來(lái)。(業(yè)務(wù)邏輯從數(shù)據(jù)庫(kù)中分離出來(lái),應(yīng)用程序更容易部署與測(cè)試,有更好的可移植性)
mybatis對(duì)sql進(jìn)行了封裝和外部化,使sql從應(yīng)用程序代碼中分離出來(lái)。(業(yè)務(wù)邏輯從數(shù)據(jù)庫(kù)中分離出來(lái),應(yīng)用程序更容易部署與測(cè)試,有更好的可移植性)
mybatis怎么用:
1.從官網(wǎng)上下載mybatis的jar包,導(dǎo)入項(xiàng)目中
2.編寫(xiě)配置文件configuration.xml文件(他是mybatis的總配置文件,其中包含數(shù)據(jù)庫(kù)信息和mapper文件位置)
3.編寫(xiě)mapper.xml文件(sql語(yǔ)句就在這)
4.寫(xiě)個(gè)用于存放結(jié)果的類(lèi)
5.然后就在可在調(diào)用了(調(diào)用步奏:打開(kāi)資源(資源為總配置文件)、創(chuàng)建session工廠、session工作打開(kāi)session、session調(diào)用mapper讀寫(xiě)數(shù)據(jù))
mybatis優(yōu)缺點(diǎn):
1.mybatis本身就很小且簡(jiǎn)單。沒(méi)有任何第三方依賴(lài),最簡(jiǎn)單安裝只要兩個(gè)jar文件+配置幾個(gè)sql映射文件
2.mybatis不會(huì)對(duì)應(yīng)用程序或者數(shù)據(jù)庫(kù)的現(xiàn)有設(shè)計(jì)強(qiáng)加任何影響
3.mybatis沒(méi)有對(duì)數(shù)據(jù)庫(kù)模型或?qū)ο竽P偷脑O(shè)計(jì)做任何假設(shè)。
4.mybatis是某些特性使它能夠非常高效的處理大型數(shù)據(jù)集(支持行處理器,也支持取某個(gè)范圍內(nèi)個(gè)結(jié)果)
5.mybatis允許你用多種方式建立從對(duì)象到數(shù)據(jù)庫(kù)的映射關(guān)系。mybatis允許你將同一個(gè)類(lèi)以多種方式映射。mybatis支持多種數(shù)據(jù)獲取策略。
何時(shí)不該使用mybatis:
1.當(dāng)永遠(yuǎn)擁有完全控制權(quán)時(shí)。(可以使用完全的 對(duì)象/映射 方案,如hibernate)
2.當(dāng)應(yīng)用程序需要完全動(dòng)態(tài)的sql時(shí)。
3.當(dāng)沒(méi)有使用關(guān)系數(shù)據(jù)庫(kù)時(shí),(或使用的不是真正的關(guān)系數(shù)據(jù)庫(kù)時(shí),建議使用jdbc)
4.當(dāng)mybatis不起作用時(shí)。
本文關(guān)鍵詞:mybatis,數(shù)據(jù)庫(kù)
上一篇:jquery ajax方法[ 02-22 ]
下一篇:液晶售飯機(jī)在線(xiàn)升級(jí)方法[ 02-29 ]