我有一个访问MongoDB的界面:
public interface MyDataDBRepository extends MongoRepository<MyData, String>;
内含一些查询。 我想在调用默认的.save方法时添加日志/调试信息。
目前,我在其中添加了一个“默认”方法:
public default void saveAndLog(MyData d){
if (true){
....logs...
}
this.save(d)
}
,并将所有repository.save(d)替换为repository.saveAndLog(d)。可以。
但是我想使用参数化的值来确定是否要对数(替换'if true')。
但是在Java中的接口内部使用@Value
似乎是不可能的,因为Java接口除了静态final之外不存储其他变量,而且我无法让Spring @Value
与该接口一起工作。
任何其他可行的想法,我相信都将使用Spring Aspect或Interceptor,但我对它们知之甚少。它们也不能与Interfaces一起使用...
有什么想法吗?对不起,如果我的问题很傻。 谢谢