Junior — Middle
Կարող եք նշել Hibernate-ում օգտագործվող կասկադային գործողությունների տեսակները?
sobes.tech AI
Պատասխան AI-ից
Hibernate-ում, կասկադային գործողությունները թույլ են տալիս ավտոմատ տարածել գործողությունները մեկ օբյեկտից դեպի կապված օբյեկտները: Կասկադային գործողությունների հիմնական տեսակները՝
- CascadeType.PERSIST — երբ պահվում է ծնողական օբյեկտը, ավտոմատ կերպով պահվում են կապված օբյեկտները:
- CascadeType.MERGE — երբ թարմացվում է ծնողական օբյեկտը, թարմացվում են նաև կապված օբյեկտները:
- CascadeType.REMOVE — երբ ջնջվում է ծնողական օբյեկտը, ջնջվում են նաև կապված օբյեկտները:
- CascadeType.REFRESH — երբ թարմացվում է ծնողական օբյեկտի վիճակը տվյալ բազայից, թարմացվում են նաև կապված օբյեկտները:
- CascadeType.DETACH — երբ ծնողական օբյեկտը առանձնացվում է սեսիայից, նաև կապված օբյեկտները առանձնացվում են:
- CascadeType.ALL — ներառում է բոլոր նշված գործողությունները:
Օրինակ՝
@Entity
public class Parent {
@OneToMany(cascade = CascadeType.ALL)
private List<Child> children;
}
Այստեղ բոլոր գործողությունները կասկադային կերպով կիրականացվեն Child օբյեկտների նկատմամբ։