预加载或延迟加载
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
在 jOOQ 中,您始终显式加载数据,而不是通过预加载或延迟加载自动加载数据。两者起初看起来都很有用,但代价高昂,或者说,会增加复杂性。
- 当您需要数据时,预加载可以防止额外的往返行程,但是当您不需要数据时,却无法轻易避免,因此很可能预加载会产生过多不必要的开销。
- 当您不需要数据时,延迟加载可以防止不必要的加载,但是当您确实需要数据时,会产生延迟的额外工作(可怕的 N+1 问题)。
在 JPA 生态系统中,很多人提倡使用查询来避免上述问题。 这就是为什么在 jOOQ 中,上述问题不存在的原因,因为您将始终明确指出生成所需数据的确切查询。
反馈
您对此页面有任何反馈吗? 我们很乐意听到您的反馈!