簡體   English   中英

Hibernate生成額外的查詢

[英]Hibernate generates extra query

我有2張桌子A和B。 我像a.key =? 和a.id = b.id

它會生成多余的查詢。

第一個查詢是從獲取與給定a.key匹配的元素(它有179個元素)。 然后它執行相同的查詢4次。 第一次迭代在“ in”子句中采用100個參數,然后分別是50個,25個和4個。

我不明白為什么它不能執行查詢購買,在單個查詢中給出了179個元素

在從A到B的關系中,您最可能具有:

batch-size="100"

並可能:

fetch="select"

您可以將其更改為:

fetch="join"

或將批次大小增加到200,然后看看會發生什么。

請注意, a.id=b.id部分敲響了您的OO設計和ORM映射不正確的提示。 您需要使用關系並讓休眠狀態為您完成工作(在這種情況下為聯接)。 如果是這種情況,那么以上建議在您正確映射實體之前不適用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM