• 情景:

在我使用Hibernate使用2个表【客户表,订单表】进行联表查询时,发生的StackOverflowError。

  • 问题:

我两个实体类中都重写了toString()方法,并且相互调用了彼此,导致我println(客户)时,一直会相互调用彼此的toString()方法,导致栈溢出错误。

  • 解决:

去掉订单类toString()方法中的客户类。

  • 分析:

在《深入理解Java虚拟机》一书中,是这么介绍的(Page 26)

Java虚拟机栈---在Java虚拟机规范中,对这个区域规定了两种异常情况:如果线程请求的栈深度大于虚拟机所允许的深度时,将抛出StackOverflowError。另一个是OutOfMemoryError。

  • 总结:

其实,内存溢出错误就在我们身边...

 

 

----------------------------------------吐糟分割线----------------------------------------------------------------------------------------

时间:2016年11月7日14:22:21

妈蛋的,自从遇到第一次内存泄露异常后,我经常遇到内存泄露问题,额...好无语啊。

 

相关文章:

  • 2021-12-13
  • 2021-11-29
  • 2022-12-23
  • 2021-06-21
  • 2021-05-11
  • 2021-04-25
  • 2021-07-23
  • 2022-02-03
猜你喜欢
  • 2022-12-23
  • 2021-08-30
  • 2022-12-23
  • 2021-12-16
  • 2021-05-12
  • 2021-10-10
  • 2021-06-16
相关资源
相似解决方案