Sobes.tech
Middle

Lazımi yuklash (lazy) va shoshilinch yuklash (eager) o'rtasidagi farq nima?

sobes.tech AI

AIdan javob

Lazy yuklash ob'ektni birinchi kirishigacha boshlashni kechiktiradi. Tashqi yuklash, uni o'z ichiga olgan asosiy ob'ektni yuklashda darhol boshlaydi.

Farqlar:

Xususiyat Lazy yuklash Tashqi yuklash
Yuklash vaqti Birinchi foydalanishda Asosiy ob'ektni yuklashda
Yuk Vaqt bilan taqsimlangan Bir martalik, boshlanishda
Xotira Dastlab xotirani tejash Darhol ko'proq xotira talab qilishi mumkin
Ishlash tezligi Ma'lum ma'lumotlar bilan ishlashda yaxshiroq Agar barcha ma'lumotlar darhol kerak bo'lsa, tezroq bo'lishi mumkin

Hibernate misoli:

// Lazy yuklash
@Entity
public class Order {
    @OneToMany(fetch = FetchType.LAZY)
    private List<Item> items;
}

// Tashqi yuklash
@Entity
public class Order {
    @OneToMany(fetch = FetchType.EAGER)
    private List<Item> items;
}