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