grails去掉domain中关联对象的lazy策略

来源:互联网 发布:cs算法原理 编辑:程序博客网 时间:2024/04/30 04:00

相信跟Hibernate打过交道的应该都知道它的懒加载策略,这个真是让人欢喜让人忧啊,目前项目中用到了对象的关联字段取值问题,

而且因为这个报了一个hibernate的lazy加载导致空指针异常,后来在网上查找资料,相关grails的资料比较少,甚至一些外国网站也找过了,奈何本人英语很烂。。所以最后还是通过查grails的手册,找到几种解决方式,各位看官根据实际情况进行使用吧:

第一种方式:

static mapping = {
                acquirerAccount fetch:"join"
    }

static belongsTo = [acquirerAccount:boss.BoAcquirerAccount]

第二种方式:

 static mapping = {
              acquirerAccount lazy:false   //也可以这样去配置
     }

还有一种方式:

 static mapping = {


 table 'BO_MERCHANT'
       cache usage:'read-only', include:'non-lazy'//使用非lazy方式的配置(来自grails参考手册)
       //cache:'read-write' // or 'read-only' or 'transactional'

}

可以根据具体情况进行选择,呵呵,把大家查手册的时间都给省掉了,如果还有什么更好的方案的话,大家可以都发表下看法。

君子有成人之美,独乐乐不如众乐乐  ,经历过的许多人,许多事所得,我得出:程序开发的人是最大公无私的。

原创粉丝点击