Mybatis

MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

相比之下,还有一款优秀的框架Hibernate,Hibernate应用非常广泛,但是过度强调持久化和隔离数据库底层细节, 也导致了很多弊端,例如HQL需要额外的学习,未必比深入学习SQL语 言更高效;减弱程序员对SQL的直接控制,还可能导致其他代价,本来 一句SQL的事情,可能被Hibernate生成几条,隐藏的内部细节也阻碍了 进一步的优化。

MyBatis虽然仍然提供了一些映射的功能,但更加以SQL为中心,开 发者可以侧重于SQL和存储过程,非常简单、直接。如果我们的应用需 要大量高性能的或者复杂的SELECT语句等,“半自动”的MyBatis就会比 Hibernate更加实用。

0%