假设以下代码片段使用 @PrePersist 和 @PreUpdate 注释以及 Joined-type 继承:
@Entity
@Inheritance(strategy=InheritanceType.JOINED)
public abstract class A {
...
@PrePersist
private void prePersist() {
...
}
@PreUpdate
private void preUpdate() {
...
}
}
@Entity
@DiscriminatorValue("B")
public class B extends A {
...
@PrePersist
private void prePersist() {
...
}
@PreUpdate
private void preUpdate() {
...
}
}
问题:我们可以依赖回调方法的任何执行顺序吗?
例如,当持久化类 A 和 B 时,B 中的 prePersist 方法会在 A 中的 prePersist 方法之前执行,反之亦然?
我们可以假设 B 中的 prePersist 将在 A 类被持久化之前执行吗?