要去对比两个事物,那么两个事物肯定是有共性,才能去谈差异。
第一步: hibernate和Mybatis的共性
两者都是优秀的对象关系映射框架,对jdbc对象的封装的持久层框架。
第二步: 两者的差异
A: hibernate映射关系为POJO到表的映射;Mybatis为sql结果集与 POJO的映射(hibernate 有pojo对表的xx.hbm.xml;Mybatis我们看到的是mapper/xx.xml中自定义返回结果对应到具体的POJO即可)。
B: Hibernate 自动生成sql;Mybatis 手动编写sql。
C: Hibernate因为是自动生成sql所以其移植性优于Mybatis。(Hibernate数据库无关性好)
D: Hibernate配置要比mybatis复杂的多,学习成本也比mybatis高。