удаление каскада гибернации - PullRequest
0 голосов
/ 16 июня 2009

у меня есть один класс, называемый курс, и один класс, называемый учебники в классе у меня есть набор учебников. Когда я удаляю курс, я хочу, чтобы все учебники, связанные с этим курсом, были удалены. Но в настоящее время учебники не удаляются, когда я удаляю курс владельца, только внешний ключ курса в таблицах учебников становится нулевым;

я использую следующий код cascade = "delete-orphan, all" inverse = "true" в course.hhm.xml

когда я удаляю

Ответы [ 2 ]

0 голосов
/ 10 февраля 2010

Обратите внимание, что часть "сирота" не имеет ничего общего с каскадным удалением курса к уроку, она позволяет

c.getTutorials().remove(tutorialToDelete);
session.merge( c );

чтобы удалить учебник, который был удален в экземпляре коллекции, я не знаю, есть ли проблемы с производительностью, связанные с флагом-сиротой, но если вы не полагаетесь на это поведение, вы можете просто переключиться на

cascade="delete"
0 голосов
/ 16 июня 2009

Попробуйте

cascade="all-delete-orphan"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...