无法使用 spring 数据存储库中的 deleteBy 自定义方法执行删除操作

Can not execute delete operation by using deleteBy custom method in spring data repository

当我尝试使用 spring 数据存储库中的 deleteBy() 自定义方法从我的服务 class 中删除数据时,出现以下错误。

javax.persistence.TransactionRequiredException:当前线程没有可用的具有实际事务的 EntityManager - 无法可靠地处理 'remove' 调用

我尝试使用制作方法和服务 class @Transactional。然后自动装配成员得到空值。这些是在没有 @Transactional 的情况下初始化的。

加载所有需要删除的数据。 getBYId(id); 并使用该集合执行 deleteAll() 操作。 那解决了问题。

您必须先加载对象

我遇到了同样的问题,但在我只用 @Transactional 注释方法后,它起作用了。

@Repository()
interface UserRepository : CrudRepository<User, Long> {

    @Transactional
    fun deleteAllByCpf(cpf: String)
}

就我而言,我将 Springboot 与 Kotlin 结合使用。