相同点:都屏蔽了JDBC API的底层访问细节,使用我们不用与JDBC API打交道,就可以访问数据库。
不同点:
1.Hibernate是一个全自动的ORM映射框架,它可以自动生成并执行SQL语句,将得到结果集中的字段自动映射到指定的实体类的属性上面。
而MyBatis需要我们在SQL映射文件中编写SQL语句,然后再通过这个SQL映射文件,将SQL所需要的参数,以及返回的结果字段映射到指定实体类中的属性上面。
2.对于一些不太复杂的SQL查询,Hibernate可以很好帮我们完成,但是对于特别复杂SQL的查询,我们就使用MyBatis。