Mybatis与Jpa的区别与性能对比总结

Posted Rsun04551

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis与Jpa的区别与性能对比总结相关的知识,希望对你有一定的参考价值。

1、JPA是对象与对象之间的映射,Mybatis是对象和结果集的映射
2、JPA移植性比较好,不用关心用什么数据库,因为mybatis自由写sql语句,所以当项目移植的时候还需要改sql
3、当需要修改字段的时候,Mybatis改起来特别费事,而JPA相对简单
4、通常小项目适合使用JPA,大型项目适合使用Mybatis,具体还是要根据业务去选择

缺点:
JPA的saveAll方法批量新增速度会很慢,导致导入一些Excel表数据原本同步的需要开个异步去处理,但是如果是在定时任务中涉及到Excel表的导入,
异步中套异步,整个链路会很长,出现bug要排查很久
导入Excel表设计到的批量新增可以重写JPA里的saveAll方法或者使用定时任务
导出:
前端导出都是加载在内存,所以小数据量可以放在前端,大数据量还是要放到后端进行
千万级大数据的导出:可以采用分片、按日期、分页方式
尝试:
批量新增数据时候,新增1K、1W和10W条数据,Mybatis是JPA的10倍左右
这仅仅是新增,如果修改效率更低
主要原因:

@Transactional
public <

以上是关于Mybatis与Jpa的区别与性能对比总结的主要内容,如果未能解决你的问题,请参考以下文章

Mybatis与Hibernate的详细对比

Spring Data JPA 与 MyBatis 对比分析

MyISAM与InnoDB两者之间区别与选择,详细总结,性能对比

Spring Data JPA MyBatis与Hibernate简单对比

mybatis与hibernate的区别持久层对比面试题

MyISAM与InnoDB两者之间区别与选择,总结,性能对比