спящий каскадный вопрос - PullRequest
0 голосов
/ 30 мая 2009

У меня есть спящий компонент с именем Property, который имеет тип и значение. Если тип - это определенный класс (EntityValue), тогда value является ссылкой на BaseEntity. BaseEntity имеет свойства списка @OneToMany @ CascadeType.ALL.

Чтобы безопасно удалить BaseEntity, мне нужно убедиться, что он не является частью EntityValue ни в каком другом BaseEntityS. Даже если мне удастся придумать hql, чтобы выяснить, какая BaseEntityS ссылается на данный BaseEntity, могу ли я удалить свойство из его коллекции, будет ли удалена запись таблицы ссылок?

Спасибо!

1 Ответ

1 голос
/ 01 июня 2009

Я думаю, что вы ищете аннотацию:

@Cascade({org.hibernate.annotations.CascadeType.DELETE_ORPHAN})

Это приведет к удалению другой стороны «один ко многим» при удалении родительского объекта.

...