Что такое CascadeType в JPA и как его правильно использовать?

Middle
268 просмотров
AFK Offer AI

Cascade определяет распространение операций: PERSIST (persist parent → persist children), MERGE, REMOVE, REFRESH, DETACH, ALL (все). @OneToMany(cascade=CascadeType.ALL) — спасёт от явного persist для children. Но REMOVE с каскадом опасен — удаление parent удаляет все children. orphanRemoval=true удаляет child при удалении из коллекции parent. Правило: CASCADE.ALL для owned collections (OrderItems принадлежат Order), осторожно с независимыми сущностями.

Следующий вопрос

Как работают batch операции в JDBC и сколько это ускоряет?