Exception in thread "main" java.lang.StackOverflowError
at java.lang.reflect.InvocationTargetException.<init>(InvocationTargetException.java:72)
at sun.reflect.GeneratedMethodAccessor14.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:84)
at com.cpms.entity.Department_$$_jvst20d_0.toString(Department_$$_jvst20d_0.java)
由於采取了熱加載(載入時就將引用實體同時載入),在使用toString方法時,陷入死循環。
解決辦法:
step1:toString()中可以取消對引用對象的輸出;
step2:將熱加載載改成懶加載fetch=lazy