我可以在父类和子类中定义相同的 JPA 回调方法吗?如果是,我是否需要调用 super.onPrePersist(); 在子类 onPrePersist() 方法中?
@MappedSuperclass
public abstract class AbstractEntity {
@PrePersist
protected onPrePersist() {
System.out.println("Parent onPrePersist() invoked");
}
}
@Entity
@Table(name = "child")
public class Child extends AbstractEntity {
@PrePersist
protected onPrePersist() {
**super.onPrePersist();**
System.out.println("Child onPrePersist() invoked");
}
}
Run Code Online (Sandbox Code Playgroud)
我已经为上述场景编写了一个单元测试并且它有效。对于子类中的每个回调方法,您必须先调用父回调方法:
@Override
@PrePersist
protected onPrePersist() {
**super.onPrePersist();**
System.out.println("Child onPrePersist() invoked");
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1095 次 |
| 最近记录: |