Hibernate или Grails - нужна помощь в понимании каскада - PullRequest
1 голос
/ 14 июля 2010

Я студент колледжа, у которого нет большого опыта в Hibernate или Grails. Основной вопрос, который у меня есть, в основном о том, где применяется каскадирование, относится ли оно только к атрибутам, для которых есть запись в базе данных или другим?

так, например, если у меня есть 2 домена A и B ... где B имеет hastable, который заполнен буквами A. Если я удаляю A, нужно ли вручную удалять запись хеш-таблицы в B этой конкретной записи A? Если нет, какое поведение я должен установить, чтобы иметь возможность удалить его?

P.S. Мой первый пост ... Я прошу прощения, если не хватает деталей, но у меня действительно нет большого опыта, чтобы правильно описать мой вопрос ..

Ответы [ 2 ]

0 голосов
/ 14 июля 2010

Главный вопрос, который у меня есть, в основном о том, где применяется каскадирование, применяется ли он только к атрибутам, для которых есть запись в базе данных или по другому?

Каскадирование позволяет "распространять" такие операции, как персистирование, слияние, сохранение-обновление, ... вдоль ассоциации между сущностями. Таким образом, если A имеет связь с B, возможно каскадное выполнение операций с A по B.

Например, если у меня есть 2 домена A и B ... где B имеет хеш-таблицу, заполненную буквами A. Если я удаляю A, нужно ли вручную удалять запись хеш-таблицы в B этой конкретной записи A?

Как я уже сказал, каскадирование выполняется по ассоциации. Здесь вы описали связь между B и A, поэтому ничто не будет каскадно соединено с A на B. Теперь, если эта связь является двунаправленной (то есть, если вы можете перемещаться от A к B), вы сможете каскадировать операции От А до Б.

Но вы должны понимать, что каскадирование не влияет на содержимое памяти само по себе, удаление A из коллекции должно быть сделано вами.

Смотри также

0 голосов
/ 14 июля 2010

Для отношений один ко многим по умолчанию используется стратегия сохранения и обновления.Для удаления вам необходимо иметь предложение об принадлежности.

Подробнее см. В разделе 5.2.1.2 в следующем документе

Подробнее см. http://grails.org/doc/1.0.x/guide/5.%20Object%20Relational%20Mapping%20%28GORM%29.html

...