SpringDataJpa在一对多、多对多关系的级联操作时出现StackOverflowError(是真滴坑)

    技术2025-10-08  6

    错误说明

    可以看到是两个类的toString反复调用导致的堆栈溢出。在两类中分别重写了 toString 方法,导致查询加载时两类在互相调用对方的toString,形成递归,造成堆栈溢出。

    解决问题

    在 toString 方法中任意一方去除打印的对方信息。如果用的是lombok,则不要用@Data或者@ToString注解。将@Data注解替换成@Getter和@Setter,然后手动重写toString()方法。

                       

    Processed: 0.010, SQL: 9