使用lombok
jpa实体,继承基类,使用@Data注解 会有警告,直接使用 @EqualsAndHashCode(callSuper=true)
警告消除,以为万事大吉。
当对实体进行删除操作的时候,后台报错内存溢出,没道理啊,然后去分析
结果:
lombok生成hashCode时进入无限循环,导致内存溢出,抛出异常。
为什么会进入无限循环?在我的实体中,有oneToMany的一个属性,并且设置级联删除,在对这个字段生成hashCode的时候
就会导致无限循环
解决:
在@EqualsAndHashCode中添加 exclude 就可以了。
最好的方法是:自定义equals hashCode方法