为什么不建议使用JPA

一、JPA强在简单的CRUD,动态查询、Join查询虽然支持,但是不是很友好。

二、在体量比较大的场景下,性能优化会非常复杂。

比如OneToOne,ManyToOne is not lazy,在查询主对象的时候,会同时查询对应的关联对象。
假设有2个OneToOne关联对象,查1000次主对象,将会带来2000次关联对象的查询。并且这块你没办法优化,没办法改成批量的方式。

又比如update前会再查询一次做比对,可能很多场景下不用,此时就带来一次额外的查询。

这里有一篇详细的博文可以参考下。

三、JAP隐式规则太大,例如save和saveflush,save没用好就会导致事务问题

四、JPA社区活跃度基本没有,但是问题确很多,个人遇到过并发问题、大数据量stackoverflow问题,都没有得到有效解答

等等,不建议选型JPA。

什么时候使用JPA

在项目体量比较小,基本都是简单的sql操作,追求开发速度,追求统一规范(JPA底层框架可以动态替换)的场景下,可以选型JPA。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值