Mybatis 和 Hibernate 的區(qū)別
1、 Hibernate中的SQL語(yǔ)句已被封裝,可以直接使用,而Mybatis屬于半自動(dòng)化,SQL需要手動(dòng)完成;
2、Hibernate是完整的對(duì)象關(guān)系映射框架,而Mybatis需要自行管理映射關(guān)系。
3、 Hibernate自動(dòng)生成SQL,有些語(yǔ)句較為繁瑣,會(huì)多消耗一些性能,Mybatis手動(dòng)編寫(xiě)SQL,可以避免不需要的查詢(xún),提高系統(tǒng)性能;
Hibernate
Hibernate是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,它將POJO與數(shù)據(jù)庫(kù)表建立映射關(guān)系,是一個(gè)全自動(dòng)的orm框架,hibernate可以自動(dòng)生成SQL語(yǔ)句,自動(dòng)執(zhí)行,使得Java程序員可以隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù)據(jù)庫(kù)。 Hibernate可以應(yīng)用在任何使用JDBC的場(chǎng)合,既可以在Java的客戶(hù)端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以在應(yīng)用EJB的JaveEE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。
Mybatis
MyBatis 本是apache的一個(gè)開(kāi)源項(xiàng)目iBatis, 2010年這個(gè)項(xiàng)目由apache software foundation 遷移到了google code,并且改名為MyBatis 。2013年11月遷移到Github。
iBATIS一詞來(lái)源于“internet”和“abatis”的組合,是一個(gè)基于Java的持久層框架。iBATIS提供的持久層框架包括SQL Maps和Data Access Objects(DAOs)
當(dāng)前,最新版本是MyBatis 3.5.4 ,其發(fā)布時(shí)間是2020年2月4日。
推薦教程:《Java教程》