Sobes.tech
Junior — Middle

JPA-da məlum olan tənbəl və açgözlü məlumat yükləmə strategiyaları hansılardır?

sobes.tech Süni İntellekt

AI-dan cavab

JPA-da əlaqəli məlumatların yüklənməsi üçün iki əsas strategiya mövcuddur:

  • Ətraflı yükləmə (EAGER): əlaqəli varlıqlar əsas varlıq ilə birlikdə dərhal yüklənir. Bu, əlaqəli məlumatlara dərhal ehtiyac olduqda əlverişlidir, lakin çoxsaylı sorğulara və performansın azalmasına səbəb ola bilər.

  • Tənbəl yükləmə (LAZY): əlaqəli varlıqlar ilk müraciətdə yüklənir. Bu, resursları qənaət edir, lakin məlumatlara giriş zamanı EntityManager sessiyasının açıq olması lazımdır, əks halda LazyInitializationException xətası baş verə bilər.

JPA-də anotasiya nümunəsi:

@OneToMany(fetch = FetchType.LAZY)
private List<Order> orders;

@OneToOne(fetch = FetchType.EAGER)
private Profile profile;