mybatis四個(gè)特性?
1.sql語(yǔ)句與代碼分離,存放于xml配置文件中,優(yōu)點(diǎn):便于維護(hù)管理,不用在java代碼中找這些語(yǔ)句;
缺點(diǎn): JDBC方式可以用用打斷點(diǎn)的方式調(diào)試,但是Mybatis不能,需要通過(guò)log4j日志輸出日志信息幫助調(diào)試,然后在配置文件中修改。
2.用邏輯標(biāo)簽控制動(dòng)態(tài)SQL的拼接:
優(yōu)點(diǎn):用標(biāo)簽代替編寫邏輯代碼;
缺點(diǎn):拼接復(fù)雜SQL語(yǔ)句時(shí),沒(méi)有代碼靈活,拼寫比較復(fù)雜。不要使用變通的手段來(lái)應(yīng)對(duì)這種復(fù)雜的語(yǔ)句。
3.查詢的結(jié)果集與java對(duì)象自動(dòng)映射:
優(yōu)點(diǎn):保證名稱相同,配置好映射關(guān)系即可自動(dòng)映射或者,不配置映射關(guān)系,通過(guò)配置列名=字段名也可完成自動(dòng)映射。
缺點(diǎn):對(duì)開(kāi)發(fā)人員所寫的SQL依賴很強(qiáng)。
4.編寫原聲SQL:
優(yōu)點(diǎn):接近JDBC,比較靈活。
缺點(diǎn):對(duì)SQL語(yǔ)句依賴程度很高;并且屬于半自動(dòng),數(shù)據(jù)庫(kù)移植比較麻煩,比如mysql數(shù)據(jù)庫(kù)編程Oracle數(shù)據(jù)庫(kù),部分的sql語(yǔ)句需要調(diào)整。