Mybatis是一个支持普通SQL查询,存储过程以及高级映射的持久层框架,也被称为ORM框架,ORM是一种为了解决面向对象与关系型数据库不匹配的技术,它通过描述Java对象与数据库表之间的映射关系,自动将Java应用程序中的对象持久化到关系型数据库表中。
区别:
- Hibernate:是一个全表映射框架。通常开发者只需定义好持久化对象到数据库表的映射关系,就可以通过Hibernate提供的方法完成持久化操作。Hibernate会根据指定的存储逻辑自动生成对应的SQL,并调用JDBC接口执行,效率高与Mybatis,但对SQL查询的支持较差;不支持存储过程;不能通过优化SQL来优化性能。
- Mybatis:半自动映射框架。需要手动匹配POJO,SQL和映射关系。支持存储过程;可以配置动态SQL并优化SQL。