Отдельные описания CascadeType могут быть немного запутанными, но есть простой способ понять это из общего случая.
Для любого из значений CascadeType
это означает, что если операция X
вызывается для экземпляра, использующего интерфейс EntityManager
, и этот экземпляр имеет ссылки на другие экземпляры сущности, и для этой ассоциации определено CascadeType.X
затем операция EntityManager
также будет применена к этому ассоциированному объекту.
То есть EntityManager.refresh()
определяется как:
Обновить состояние экземпляра с
внесение изменений в базу данных
субъекту, если таковой имеется.
Таким образом, если у сущности A есть ссылка на сущность B, и эта ссылка помечена @CascadeType.REFRESH
, и вызывается EntityManager.refresh(A)
, то неявно также вызывается EntityManager.refresh(B)
.