Spring:在CrudRepository中覆盖save方法

ado*_*lzi 8 java spring spring-data

我想在save方法中添加一些代码,CrudRepository但保留原始功能.之后保存方法应该执行之前的操作,保存到存储库但另外执行额外的操作.可能吗?如果是这样,我怎么能正确地做到这一点?

提前感谢您的任何提示

编辑

所以,我想创建这样的方法:

@Override
public default <S extends MyClass> S save(S myClassItem) {
    //here my functionality 
    super.save(myClassItem); //from CrudRepository
    return myClassItem;
}
Run Code Online (Sandbox Code Playgroud)

Ben*_*oit 3

我认为不可能在这种方法中使用 super (默认和覆盖)。因此,您必须更改方法的名称 - 这可能不完全是您正在寻找的:

public interface TestRepository extends CrudRepository<MyClass, String> {

    default MyClass mySave(MyClass myClassItem) {
        save(myClassItem);
        return myClassItem;
    }
}
Run Code Online (Sandbox Code Playgroud)