最近接手别人项目,有一个新需求是修改一个属性的数据结构,将多对一改成多对多,于是一顿修改,改完发现,值出来不来,但是在debug的时候值却是存在的,这是为什么呢?
在hibernate中,多对多的属性默认是懒加载的,如果在程序执行期间一直不对这个属性访问,在含有这个属性返回的时候这个值就是空的,加上如下属性
fetch = FetchType.EAGER
这个问题找了我好久,我知道有懒加载,却不知道懒加载还能这么晚,学到了,记下,idea中debug中会把懒加载的数据加载出来,如果遇到此问题可能是懒加载的问题