MyBatics与hibernate的区别?

MyBatics与Hibernate的区别?
1.Hibernate的真正掌握要比Mybatics来的难些。MyBatics框架相对简单的容易上手,但也相对简陋些。
2.Hibernate与Mybatics都是流行的持久型开发框架,但Hibernate开发社区相对多热闹些,支持的工具也多,更新也快。而Mybatics相对平静,工具较少。
3.Hibernate和MyBatics都有相应的代码生成工具。可以生成简单的基本的DAO层方法。
4.针对高级查询,Mybatics需要手动编写Sql语句,以及ResultMap.而Hibernate有良好的映射机制,开发者无需关注SQL的生成与结果映射,可以更专注于业务流程。
5.Hibernate的调优方案
(1)制定合理的缓存策略;
(2)尽量使用延迟加载特性;
(3)采用合理的Session管理机制;
(4)使用批量抓取,设定合理的批处理参数(batch_size);
(5)制定合理的O/R映射设计
Mybatics的调优方案
mybatics在Session方面和Hibernate的Session生命周期是一致的,同样需要合理的Session管理机制。MyBatics同样具有二级缓存机制.mybatics可以进行详细的Sql优化设计
6.Sql优化方面
Hibernate的查询会将表中的所有字段查询出来,这一点会有性能消耗.Hibernate也可以自己写Sql来指定需要查询的字段,但这样就破坏了Hibernate开发的简洁性。而Mybatics的SQL是手动编写的,所以可以按需求指定查询的字段。
Hibernate hql语句的调优需要将SQL打印出来,而Hibernate的SQL被很多人嫌弃因为太丑了。MyBatics的SQL是自己手动写的所以调整方便。但Hibernate具有自己的日志统计.MyBatics本身不带日志统计,使用Log4j进行日志记录。
7.拓展性方面。Hibernate与具体数据库的关联只需在XML文件中配置即可,所有的Hql语句与具体使用的数据库无关,移植性很好。MyBatics项目中所有的SQL语句都是依赖所用的数据库的,所以不同的数据库类型支持不同

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值