Middle
Ləng (lazy) və ehtiraslı (eager) yükləmə arasındakı fərq nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Ləngiməli yükləmə obyektin ilk girişinə qədər başlanğıcını təxirə salır. Əzəl yükləmə, onu ehtiva edən əsas obyekt yüklənərkən dərhal obyektin başlanğıcını həyata keçirir.
Fərqlər:
| Xüsusiyyət | Ləngiməli yükləmə | Əzəl yükləmə |
|---|---|---|
| Yükləmə vaxtı | İlk istifadə zamanı | Əsas obyekt yüklənərkən |
| Yük | Zamanla paylanmış | Tək, başlanğıcda |
| Yaddaş | Əvvəlcə yaddaşı qənaət edir | Dərhal daha çox yaddaş tələb edə bilər |
| Performans | Hissə-hissə məlumatlarla işləməkdə daha yaxşı | Bütün məlumatlar dərhal lazım olsa, daha sürətli ola bilər |
Hibernate nümunəsi:
// Ləngiməli yükləmə
@Entity
public class Order {
@OneToMany(fetch = FetchType.LAZY)
private List<Item> items;
}
// Əzəl yükləmə
@Entity
public class Order {
@OneToMany(fetch = FetchType.EAGER)
private List<Item> items;
}