为什么JPA存储库保存方法会自动更新子实体?

时间:2020-10-23 15:53:35

标签: java spring spring-boot hibernate kotlin

所以我的春季启动项目中有一个错误,我现在不知道该怎么办。我有以下2个实体:

Customer.kt:

@OneToMany(mappedBy = "customer", cascade = [CascadeType.ALL])
var projectList: List<Project>?

和Project.kt:

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name="customer_fk")
var customer: Customer?

我在方法中仅使用一次save方法,如下所示:

customerRepository.save(existingCustomer)

existingCutomer有一个字段projects。调试时,我确保projects为空。我的计划是只更新没有项目的Customer属性。但是,我只使用一次save方法,但是他也更新了我的项目。我不知道为什么,这没有意义,因为projects字段为空。

我想在此处粘贴更多代码,但我希望我粘贴了相关代码。因为其余的东西确实很多,希望不重要。

有人知道我在给定的代码中做错了什么吗?当project没有项目时,为什么customer表也会更新?

0 个答案:

没有答案
相关问题