我只想问一下,如何证明休眠状态正在执行延迟加载。
我有这样的代码:
我尝试使用以下代码测试休眠(jpa)中的延迟加载:
实际上,我不会加载“ alamat”属性,因为这是一个TEXT。但是,当我尝试调试代码时,会得到如下输出跟踪:
Hibernate仍然选择alamat列,并且在debug veriable中,我发现Hibernate实际上是加载alamat列:
最佳答案
Hibernate手册说明:
要启用属性级别的延迟获取,您的类必须是
检测:将字节码添加到原始类以启用此类
功能,请参阅Hibernate参考文档。如果
您的类未检测,属性级别的延迟加载是
默默无视。
如何做到这一点在手册的chapter 20.1.8. Using lazy property fetching中进行了说明。它需要一个特殊的构建过程。