Java Hibernate分离的惰性加载关系
我有一个具有延迟加载关系的对象。加载对象后(没有加载延迟加载子对象),我关闭了会话,从而分离了对象 如果我理解正确,如果我尝试myObject.getLazyChild(),我将得到一个LazyInitializationException 在这种情况下,有没有办法让myObject.lazyChild自动设置为nullJava Hibernate分离的惰性加载关系,java,hibernate,lazy-loading,Java,Hibernate,Lazy Loading,我有一个具有延迟加载关系的对象。加载对象后(没有加载延迟加载子对象),我关闭了会话,从而分离了对象 如果我理解正确,如果我尝试myObject.getLazyChild(),我将得到一个LazyInitializationException 在这种情况下,有没有办法让myObject.lazyChild自动设置为null 当然,我可以调用have myObject.setLazyChild(null),但是我正在寻找一种自动完成的方法。不,没有办法。你为什么要这么做?如果您试图访问它,但它尚未加
当然,我可以调用have myObject.setLazyChild(null),但是我正在寻找一种自动完成的方法。不,没有办法。你为什么要这么做?如果您试图访问它,但它尚未加载,则最好得到一个异常,通知您的设计中存在错误,而不是
null
,这可能是该字段的一个完全有效的值,从而导致应用程序表现不好。考虑一下这个用例:
- 如果患者的癌症字段为空,那么让他走
- 否则,马上开始治疗他
如果你忘记加载患者的癌症区域,你会让他离开。我最好得到一个例外,修复我的代码,让病人痊愈。不,没有办法。你为什么要这么做?如果您试图访问它,但它尚未加载,则最好得到一个异常,通知您的设计中存在错误,而不是
null
,这可能是该字段的一个完全有效的值,从而导致应用程序表现不好。考虑一下这个用例:
- 如果患者的癌症字段为空,那么让他走
- 否则,马上开始治疗他