gpt4 book ai didi

hibernate - Grails和Hibernate的惰性初始化异常

转载 作者:行者123 更新时间:2023-12-04 03:47:07 24 4
gpt4 key购买 nike

在Grails中最常见的org.hibernate.LazyInitializationException所在的位置是什么,原因是什么,您如何解决呢?

我认为对于新手来说,这个异常(exception)非常多,因此,如果您提供更多示例,那就太好了。

最佳答案

让我们举个例子:

class Book {
String title
Author author
}

class Author {
...
}

Book book = Book.get(1)

众所周知,默认获取模式在域类中是惰性的。考虑上面的示例,假设我们得到book对象,然后Book对象被附加到 hibernate session 对象,即自动一级缓存。在将域对象与 session 对象分离之后,我们尝试获取book.author,此时,它引发了Lazy初始化异常。

因此,解决方案是使用以下给出的代码,既可以急于获取模式,也可以将您的book对象附加到 hibernate session :
if(!book.isAttached()){
book.attach()
}

上面给出的描述是场景之一。可能还有更多。我要求其他人分享。

关于hibernate - Grails和Hibernate的惰性初始化异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1368025/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com