β

spring data jpa 小结

Harries Blog™ 40 阅读

1: DAO层方法入参带pageable,那么 JPQL 无法用left join fetch,因为默认会进行select count(),而count()函数后面无法带xxx join fetch,必须去掉fetch才可以,否则抛出以下异常

query specified join fetching, but the owner of the fetched association was not present in the select list

2: Dao层方法入参不带pageable,那么JQPL可以用left join fetch,这个其实也好理解,fetch本来就是解决1+N的问题,一次性抓取所有,如果带上 分页 ,那么与之就冲突了,

所以也可这样理解,带分页的O neToMany (默认是LAZY),迭代many的时候,必定会出现多个 sql 语句,也就意味着要容忍这种 性能问题 ,因为毕竟带了分页,(1+N)查询满足条件的1有若干个(带分页),

作者:Harries Blog™
追心中的海,逐世界的梦
原文地址:spring data jpa 小结, 感谢原作者分享。

发表评论