Sobes.tech
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 օբյեկտների նկատմամբ։