2017-06-13 81 views
3

命名的方法,我想有一个与方法的单一方法接口:春数据JPA:无JpaRepository

boolean existsByStrAndStatus(String str, Character status); 

,并将它作为工作,是为命名方法。然而,我看到的所有例子都是从JpaRepository继承而来的,我不想从这个接口继承,因为我编写的任何实现(用于测试目的)也需要继承JpaRepository提供的所有内置便利方法如findAllflush等。我很了解嘲笑框架,但我正在寻找一种不涉及使用例如Mockito的解决方案。

是否有替代JpaRepository我仍然可以@Autowire@Autowire这个存储库,因为我认为合适,但如果我需要编写一个实现,我只需要实现我自己的方法?

+0

所以,你想在你的测试和模拟(由你自己)只有一种方法把存储库的自定义实现? – ByeBye

+0

@ByeBye没错,在这个特殊情况下。 – kinbiko

+0

为什么你不能创建你自己的模拟 - “RepositoryImpl实现存储库”,然后实现你的方法,并保持休息而不执行 – ByeBye

回答

1

我想你应该创建界面的自定义实现:

class TestRepository implements Repository 

将实施只有你自定义的方法和休息离开未​​实现。然后你可以在你的测试中使用它。