hibernate不能级联删除

一个简单的问题困扰了我,给大家分享一下。
hibernate中我删除一个一对多的对象,结果因为在多的一方有外键,不能删除。
所以我考虑级联,cascade,选择是ALL,结果还是不能删除,我郁闷了。

自己转了一大圈也没有解决,网上找了好久才发现,原来hibernate自动生成的表,在mysql中外键删除时的值不是cascade,所以不能级联删除。

解决办法:
   更改表的属性,改为cascade就可以进行级联删除了。
   如果保存表的时候保存或者不能保存,就另存一下,把原来的删除了再改回来!

希望有人会遇到这个简单的又不容易发现的细节!

注:我使用的是注解annotation

你可能感兴趣的:(Hibernate)