hibernate.enable_lazy_load_no_trans不起作用

Amr*_*led 1 hibernate lazy-initialization

我正在使用JPA2.1和hibernate 4.3.8,我已经配置了presistence.xml以允许延迟加载

我已经添加了

<property name="hibernate.enable_lazy_load_no_trans" value="true" />
Run Code Online (Sandbox Code Playgroud)

进入属性部分

但我仍然得到LazyInitializtionException,有什么问题?

Vla*_*cea 5

hibernate.enable_lazy_load_no_trans是一个反模式,你永远不应该使用它,因为在初始持久化上下文之外获取的每个延迟关联都需要数据库连接,这将对底层事务日志和JDBC连接池施加压力.

更多的hibernate.enable_lazy_load_no_trans是,很容易出现N + 1个查询问题.

有时,您甚至不需要实体,DTO投影甚至更好.

  • “从不使用”-&gt;“尽可能避免”。对于我们的用例,此参数是最佳选择(最多20个用户,在GUI中(选项卡,工具提示和对话框中)显示100%显示的大实体图)。 (2认同)