簡體   English   中英

JPA:始終加載OneToMany關系(不考慮LAZY)

[英]JPA: OneToMany relationship gets always loaded (LAZY not considered)

我有一個JPA實體Rent,它與所租借的商品具有1:M的關系(稱為“可出租”)。 我希望此可租項被延遲加載,但即使我使用fetch = FetchType.LAZY,它們也似乎總是被加載。 這是我的代碼:

@Entity
@Table (name = "rent")
public class Rent implements Serializable{

    ........

    @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
    @JoinTable(name = "rent_rentable")
    private List <Rentable> rentables = new ArrayList <Rentable> ();

這是我如何收取租金的方法:

 from Rent r  where r.kunde.id = 83

但是我也得到了相關的租金。 滿載租金的租金

有人可以幫我嗎? 我希望這些可租物品被延遲加載!

謝謝!

當您在調試器中檢查集合時,您的ORM框架(Hibernate)被迫從數據庫中延遲加載它。

您需要打開SQL日志記錄,並且會看到,只有在調試器中檢查它或在Rent實例上調用getRentables()時,才會加載getRentables()

暫無
暫無

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

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