Яка різниця між FetchType і CascadeType?
CascadeType — це властивість, яка використовується для визначення каскадного зв’язку між батьківським і дочірнім елементами. FetchType — це властивість, яка використовується для визначення стратегій отримання, які використовуються для оптимізації оператора вибору, створеного Hibernate, щоб він був максимально ефективним.
CascadeType. ВСЕ є каскадний тип у Hibernate, який визначає, що всі переходи між станами (створення, оновлення, видалення та оновлення) повинні каскадуватися від батьківської сутності до дочірніх сутностей.
загалом, FetchMode визначає, як Hibernate отримуватиме дані (шляхом вибору, об’єднання або підвибору). FetchType, з іншого боку, визначає, чи буде Hibernate завантажувати дані охоче чи ліниво.
Enum Клас FetchType Визначає стратегії отримання даних із бази даних. Стратегія EAGER — це вимога до середовища виконання постачальника персистентності, згідно з якою дані мають бути швидко отримані. Стратегія LAZY — це підказка середовищу виконання постачальника персистентності про те, що під час першого доступу дані слід отримувати ліниво.
CASCADE в SQL є використовується для одночасного видалення або оновлення запису з дочірньої та батьківської таблиць. Ключове слово CASCADE використовується як сполучення під час написання запиту ON DELETE або ON UPDATE.