Что ОБНОВЛЕНИЕ и СЛИЯНИЕ означают с точки зрения баз данных?

Стиль .select, а затем переписать эти стили в .select .select:

.select {
  /* top level select element */
  color: red;
}

.select .select {
  /* reset styles in nested select element */
  color: initial;
}
<div class="body">
    <p>Text</p>
    <div class="select">
        <p class="p1">Top Level Select</p>
        <div class="select">Nested Select</div>
        <p class="p2">Top Level Select</p>
    </div>
    <div>
        <p class="p1">Text</p>
        <div class="select">Top Level Select</div>
        <p class="p2">Text</p>
    </div>
</div>

86
задан André Chalella 10 June 2014 в 22:00
поделиться

2 ответа

REFRESH означает «извлекать любые изменения состояния из базы данных в мое представление». Каскадировать это просто; это означает, что все связанные сущности обновляются.

MERGE означает что-то сложное, что приближается к «сохранить», но больше похоже на «вернуть этот отсоединенный объект обратно в управляемое состояние и сохранить его изменения состояния»; каскадирование означает, что все связанные объекты возвращаются одинаково, и дескриптор управляемого объекта, который вы получаете из .merge () , имеет все управляемые объекты, связанные с ним.

Ссылка на один экземпляр соответствующие документы

75
ответ дан 24 November 2019 в 08:02
поделиться

JPA Аннотация Значение для отношений многие со многими :

  • ALL - все возможные каскадные операции, выполняемые с исходным объектом, каскадируются к цели ассоциации.
  • MERGE - если исходный объект объединяется, слияние каскадно относится к цели ассоциации.
  • PERSIST - если исходный объект постоянный, постоянный каскадируется к цели ассоциации.
  • REFRESH - если исходный объект обновляется, обновление каскадно направляется к цели ассоциации.
  • REMOVE - если исходный объект удаляется, цель ассоциации также удаляется.

Я сам вижу их таким образом (более читабельно):

  • MERGE - для существующих объектов, чтобы объединить существующих данных в таблице с данными в моем объекте. (синхронизация с базой данных)
  • PERSIST - это создание новых записей из объекта в базе данных.
  • REFRESH - это обновление данных в объекте. Возможно, в базе данных произошли изменения, которые необходимо синхронизировать. (синхронизация из базы данных)
  • REMOVE - это, ну, в общем, удаление.
83
ответ дан 24 November 2019 в 08:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: