更新時間:2021年04月28日10時21分 來源:傳智教育 瀏覽次數(shù):
(1)Mybatis是一個半ORM(對象關(guān)系映射)框架,它內(nèi)部封裝了JDBC,開發(fā)時只需要關(guān)注SQL語句本身,不需要花費(fèi)精力去處理加載驅(qū)動、創(chuàng)建連接、創(chuàng)建statement、等繁雜的過程。程序員直接編寫原生態(tài)sql,可以嚴(yán)格控制sql執(zhí)行性能,靈活度高。
(2)MyBatis可以使用XML或注解來配置和映射原生信息,將POJO映射成數(shù)據(jù)庫中的記錄,避免了幾乎所有的JDBC 代碼和手動設(shè)置參數(shù)以及獲取結(jié)果集。
(3)通過xml文件或注解的方式將要執(zhí)行的各種statement 配置起來,并通過java對象和statement中sql的動態(tài)參數(shù)進(jìn)行映射生成最終執(zhí)行的sql語句,最后由mybatis 框架執(zhí)行sql并將結(jié)果映射為java對象并返回。(從執(zhí)行sql 到返回result 的過程)。
(1)基于SQL語句編程,相當(dāng)靈活,不會對應(yīng)用程序或者數(shù)據(jù)庫的現(xiàn)有設(shè)計造成任何影響,SQL 寫在XML 里,解除sql 與程序代碼的耦合,便于統(tǒng)一管理;提供XML 標(biāo)簽,支持編寫動態(tài)SQL語句,并可重用。
(2)與JDBC相比,減少了50%以上的代碼量,消除了JDBC 大量冗余的代碼,不需要手動開關(guān)連接;
(3)很好的與各種數(shù)據(jù)庫兼容(因為MyBatis 使用JDBC 來連接數(shù)據(jù)庫,所以只要JDBC 支持的數(shù)據(jù)庫MyBatis 都支持)。
(4)能夠與Spring 很好的集成;
(5)提供映射標(biāo)簽,支持對象與數(shù)據(jù)庫的ORM 字段關(guān)系映射;提供對象關(guān)系映射標(biāo)簽,支持對象關(guān)系組件維護(hù)。
猜你喜歡:
Mybatis執(zhí)行SQL命令是怎么實現(xiàn)的?
Mybatis 中的 #{} 和 ${}的區(qū)別是什么?