题
我不会将自定义存储库实现与域软件包分开。而且,可能是一些常见的接口。例如,我想要像
com
domain
Foo
FooRepository
common
Bar
persistence
BarImpl
interface FooRepository extends Bar{}
<jpa:repositories base-package="com.domain" /> // smt else?
我应该如何配置?
解决方案
存储库类的自动拾取仅当您将其放在非常相同的软件包中并使用默认的后缀或定义后缀以手动使用时才能有效。因此,在您的情况下,您必须放置一个 FooRepositoryImpl
进入 domain
包裹。您可以使用 repository-impl-postfix
属性。如果您想将实现放入另一个软件包中,则可以使用 fooRepositoryImpl
作为豆ID。然后,课程可以驻留在您想要的任何软件包中。
我认为 Bar
是包含自定义方法声明的接口。实际上,我们建议将自定义存储库接口和实现同时放入相同的软件包中,并使其受到保护,以避免单独使用它。这样,所有客户实际上看到的都是包含查询方法和手动实现的统一存储库接口。
不隶属于 StackOverflow