Sobes.tech
Junior — Middle

JPA da sustiqlash va shoshilinch yuklash strategiyalarining qanday turlari ma'lum?

sobes.tech AI

AIdan javob

JPAда боғланган маълумотларни юклаш учун икки асосий стратегия мавжуд:

  • Ҳамён юклаш (EAGER): боғланган объектлар асосий объект билан бирга даражада юкланади. Бу, боғланган маълумотлар тезда керак бўлганда қулай, аммо ортиқча сўровлар ва ишлаш самарадорлигини пасайтиради.

  • Мўътадил юклаш (LAZY): боғланган объектлар биринчи мурожаатда юкланади. Бу ресурсларни тежайди, аммо маълумотларга киришда EntityManager сессиясининг очиқ бўлиши керак, акс ҳолда LazyInitializationException хато чиқиши мумкин.

JPAда аннотация мисоли:

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

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