【问题标题】:Hibernate. Lazy-load. Best practice. What wrong?休眠。延迟加载。最佳实践。怎么了?
【发布时间】:2018-10-22 10:55:20
【问题描述】:

我正在 Spring 和 Hibernate 上编写测试服务器。

在执行代码期间,我收到了一个 LazyInitializationException。

我发现了两个不好的解决方案:Open Session in View 和 hibernate.enable_lazy_load_no_trans。我没有使用它们。

我找到了一个可行的解决方案,但正如其他人所写的那样,它也不是很好。在实体上方我放了一个注解@Proxy(lazy = false)。

请告诉我,在项目中进行哪些更改以确保一切正常?

链接到GitHub中的项目。

该项目非常小,仅包含八个小 .java 和两个 .properties 文件。

提前感谢您的帮助!

【问题讨论】:

标签: java hibernate lazy-initialization


【解决方案1】:

这里的问题是您试图在休眠事务之外延迟加载一些实体。在我看来,最好的方法是在一个事务中执行实际与实体一起工作的代码。您需要配置事务管理器(如果还没有)并将@Transactional(来自休眠包)放在方法上。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多