我使用带有Reactive存储库的Spring boot 2执行存储的proc,它将返回计数。我有30个存储的proc,它们都只会返回一个数字并且不接受任何参数。
因此,为存储的procStroedProcDomain.java和一个示例存储库创建了一个模型,如下所示。
@Repository
public interface JobRepository extends ReactiveCrudRepository<StroedProcDomain, Long> {
@Query("CALL JOB_LOAD()")
Mono<Integer> executeProc();
}
需要创建30个这样的存储库,并希望强制所有存储库使用相同的方法
单声道
但是存储的proc名称会有所不同。因此@Query对于每个存储库都会有所不同。
实现这一目标的最佳方式是什么?
目前,我有30个存储库。希望有一个基本存储库,以便强制方法名称。
理论上,您可以在公共接口上放置两个方法:实际的查询方法,它将由调用存储过程的自定义方法实现,以及仅提供存储过程名称的方法。
但这将是相当多的代码和更复杂的代码,而不仅仅是每个存储库上的注释查询方法。