Junior — Middle
Ի՞նչ տեսակների հայտնի են JPA-ում անուշադրության և հագեցած բեռնման ռազմավարությունները։
sobes.tech AI
Պատասխան AI-ից
JPA-ում կա երկու հիմնական ռազմավարություն կապված տվյալների բեռնումը:
-
Արագ բեռնում (EAGER): կապված օբյեկտները անմիջապես բեռնվում են հիմնական օբյեկտի հետ միասին: Սա հարմար է, երբ կապված տվյալները անմիջապես անհրաժեշտ են, բայց կարող է հանգեցնել ավելորդ հարցումների և նվազեցնել կատարողականությունը:
-
Մնացական բեռնում (LAZY): կապված օբյեկտները բեռնվում են միայն առաջին մուտքի ժամանակ: Սա խնայում է ռեսուրսները, բայց պահանջում է, որ EntityManager սեսիան բաց լինի տվյալների մուտքի պահին, հակառակ դեպքում կարող է առաջանալ LazyInitializationException սխալ:
JPA-ում օրինակ նշում:
@OneToMany(fetch = FetchType.LAZY)
private List<Order> orders;
@OneToOne(fetch = FetchType.EAGER)
private Profile profile;