Hibernate:
Hibernate的DAO层开发比MyBatis简单,MyBatis需要维护SQL和结果映射。
Hibernate在数据库的移植性上比MyBatis要好,MyBatis针对不同的数据库需要写不同的SQL
MyBatis:
MyBatis在SQL的灵活度上要超越Hibernate,如果是一些很复杂的语句上(比如报表),MyBatis写SQL比Hibernate写HQL更加方便
MyBatis可以简单生成对象的增删改,但是对象之间的关系还是需要自己手工写SQL来实现。
Hibernate可以通过JavaBean和映射来来维护实体之间的关系。