我想在CrudRepository
中的save方法中添加一些代码,但保留原始功能。之后保存方法应该执行之前的操作,保存到存储库但另外执行额外的操作。可能吗?如果是这样,我怎么能正确地做到这一点?
提前感谢您提供任何提示
修改
所以,我想创建这样的方法:
@Override
public default <S extends MyClass> S save(S myClassItem) {
//here my functionality
super.save(myClassItem); //from CrudRepository
return myClassItem;
}
答案 0 :(得分:1)
我认为用这种方法(默认和覆盖)超级用户是不可能的。所以你必须改变方法的名称 - 这可能不是你想要的:
public interface TestRepository extends CrudRepository<MyClass, String> {
default MyClass mySave(MyClass myClassItem) {
save(myClassItem);
return myClassItem;
}
}