Spring:覆盖CrudRepository中的保存方法



我想在CrudRepository中的save方法中添加一些代码,但保留原始功能。在那之后,保存方法应该执行之前的操作,保存到存储库,但还要执行额外的操作。有可能吗?如果是这样的话,我该怎么做呢?

提前感谢您的任何提示

编辑

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

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

我认为在这样的方法中不可能使用super(默认和重写)。所以你必须更改方法的名称——这可能不是你想要的:

public interface TestRepository extends CrudRepository<MyClass, String> {
    default MyClass mySave(MyClass myClassItem) {
        save(myClassItem);
        return myClassItem;
    }
}

最新更新