在MongoRepository中使用@Value?

时间:2018-09-27 15:20:48

标签: java spring mongodb interface

我有一个访问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一起使用...

有什么想法吗?对不起,如果我的问题很傻。 谢谢

0 个答案:

没有答案