Wee*_*zle 8 grails persistence
根据我的阅读,save()通知持久化上下文应该保存或更新实例.但是,我在服务中有方法可以在不调用的情况下save()更改域实例的属性,并且更改会立即出现在我的数据库中,没问题.
该save()方法是否是一种更安全的方式,可以在进行更改(并使用failOnError映射捕获错误)后知道域实例将被更新?是应该在每次更改域实例的属性时使用它还是过度使用它?
如果您创建域类的新实例,则.save()调用将告知基础Hibernate层将新对象持久保存到数据库.没有.save()它就不会被持久化到数据库中.
如果通过a检索对象.get(myId),那么任何更改都将在底层事务结束时自动持久保存到数据库,因为Hibernate将对象视为"脏".事务结束是在对事务服务的方法调用结束或对控制器的请求结束时.您可以.save()在这些情况下调用,但不是必需的.它确实提供了轻松访问冲洗Hibernate .save(flush:true)或failOnError用于验证的用途.
| 归档时间: |
|
| 查看次数: |
1280 次 |
| 最近记录: |