JPA删除父记录之前检查子记录的有效方法



我使用的是PlanetScale(数据库(,它不允许外键,所以我试图在应用程序而不是数据库中强制引用完整性。在删除实体之前,是否有一种简单有效的方法来检查子记录?

我的第一个想法是使用@PreRemove注释,如果@JoinColumn(List(为空,请检查它。这会是缓慢和低效的吗?我预计会有很多孩子。

是否可以将@JoinColumn限制为仅获取第一条记录,因为我只需要知道是否有一条或多条记录?

我找到的解决方案是创建一个新的实体侦听器(Component(类并自动连接dao字段。然后我在存储库上创建了一个findFirstBy方法,如果它返回null,就没有子级。

最新更新