Mybatis与Hibernate的比较

  • 量级:mybatis更轻量,上手简单, 插件丰富;而Hibernate比较重,精通较难
  • 自定义SQL:mybatis可以自己定义灵活的SQL;Hibernate也可以自定义sql,不过一般不推荐,而只是使用自带的sql语句支持
  • 缓存:mybatis缓存机制较差;Hibernate缓存集制较好可以避免脏读
  • 效率:mybatis需要自己编写sql,效率较慢,不过目前一些插件可以自动生成一些预设的SQL,面对复杂业务还需要自己编写SQL;Hibernate开发效率较高,DAO层简单,支持JPA
  • 数据库无关性:mybatis强依赖数据库类型,对一种数据库编写的SQL不能用于另一种数据库;Hibernate高度解耦,自带JDBC实现,只需指定数据库类型
  • 映射:mybatis需要指定java对象与SQL之间的映射关系,需要将返回字段映射到java对象上,本质上是面向数据表编程;Hibernate不需要定义XML文件来指定Java对象和数据库表的映射关系,自动生成和执行SQL
  • 分库分表:mybatis对分库分表支持较好而Hibernate对分库分表支持就比较坑
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值