@NoRepositoryBean 存储库 Spring Boot 中自定义方法的通用实现

问题描述 投票:0回答:0

我有一个可以执行通用规范的存储库:

@NoRepositoryBean
interface SomeSpecificationExecutorRepository<T, ID> :
    JpaRepository<T, ID>,
    JpaSpecificationExecutor<T>

还有几个目标存储库,如下所示:

@Repository
interface SomeViewRepository : SomeSpecificationExecutorRepository<SomeViewEntity, Long>

现在我想添加一个通用的

myCustomFindMethod(id: ID, specification: Specification<T>): T?
方法,它根据提供的规范进行一些搜索,并用一些特定于id的子句扩展这个规范谓词。

问题是,如果我想通过另一个接口向

SomeSpecificationExecutorRepository
添加一些自定义方法,它的实现也将是通用的,我不能
SomeSpecificationExecutorRepository
在那里重用
findAll(specification)
方法。

有什么想法可以解决这个问题并向这个

@NoRepositoryBean
存储库添加 som 方法,这将在所有使用这个存储库的存储库中可用?

java spring-boot kotlin spring-data-jpa
© www.soinside.com 2019 - 2024. All rights reserved.