Когда сохранять экземпляр в граале?

Каковы рекомендации по сохранению экземпляра в граале?

Я делаю что-то вроде этого:

def colorInstance = Color.findOrSaveByName(colorname)
if (colorInstance.startsWith("R")) {
 colorInstance.isRColor = true;
}

Должен ли я вызвать colorInstance.save() в блоке if или нет? и почему?

2 ответа

Вы можете сохранить экземпляр явно (как в соответствии с вашим примером), когда это требует ваш поток.

Учтите, что at the end of a request cycle, when a GORM session is flushed, a dirty check operation is performed. Objects that are binded to the session are compared against their original values and if changes are detected, they are persisted at the end of a request cycle, when a GORM session is flushed, a dirty check operation is performed. Objects that are binded to the session are compared against their original values and if changes are detected, they are persisted.

Из http://www.redwindsw.com/blog/2014-01-15-moving-from-rails-to-grails-differences-and-silar, читайте абзац о сеансе Hibernate.


in grails 2.3.4 colorInstance.save flush:true

in grails 2.2.2 colorInstance.save(flush:true)

licensed under cc by-sa 3.0 with attribution.