繁体   English   中英

如何在 JPA 存储库中的自定义方法中使用规范

[英]How to use Specification in custom methods in JPA Repository

假设我有这个搜索存储库方法:

@Query(value = "SELECT t.a, t.b, t.c, t.d, t.e from Table t where t.a= :param1 and t.e= :param2")
Page<MyObject> search(Long param1, Long param2, Pageable pageable);

我想将规范应用到此方法中,如下所示:

@Query(value = "SELECT t.a, t.b, t.c, t.d, t.e from Table t where t.a= :param1 and t.e= :param2")
Page<MyObject> search(Long param1, Long param2, Specification specification, Pageable pageable);

有可能做到吗? 因为我很确定规范只能适用于默认的 Spring 方法( findAll )。

正确答案是否定的。 根据 JpaSpecificationExecutor,您可以通过以下方法使用规范 object:

findOne(@Nullable Specification<T> spec);
findAll(@Nullable Specification<T> spec);
findAll(@Nullable Specification<T> spec, Pageable pageable);
findAll(@Nullable Specification<T> spec, Sort sort);
count(@Nullable Specification<T> spec);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM