什么时候不在Grails域类中使用版本号?

时间:2011-12-08 04:29:50

标签: hibernate grails transactions gorm optimistic-locking

在我以前的Grails项目(高交易量)中,我对过时对象异常有过多次和多对多关系的可怕体验。

我基本上坚持Facebook朋友档案(整个档案与学校,雇主),大多数时候我一起保存了1000个用户档案。我通过从School和Employer域类删除版本来解决了大部分问题,因为这些数据大部分是固定的,并且不需要为每次经验或教育保存增加版本。由于时间紧迫,我不得不让事情工作,我从整个用户对象层次结构中删除了版本号,因为我仍然习惯于获得一些Stale对象异常。

所以,当我不在域类中使用版本时,我仍处于黑暗状态?

1 个答案:

答案 0 :(得分:4)

我不一定认为它是你的问题的版本,它是grails默认处理集合的方式。方式hasMany和belongsTo开箱即用最终加载比你几乎从数据库需要更多的东西(从而导致更多的东西将变得陈旧)。

Burt Beckwith的工作比this video on Advanced GORM做得好得多,我强烈推荐观看。