如何使用 Spring-Data-JPA 存储库重用参数?

How do I reuse a parameter witha Spring-Data-JPA Repository?

在查看 Spring Data JPA 存储库的 Query Creation 时,我想知道如何重用参数。例如,如果我想做类似的事情,我将如何命名该方法:

@Query("select c from #{#entityName} c where c.lower <= ?1 and c.upper >= ?1")
E findByConversionFor(Double amount);

能否将该查询转换为 SpEL 方法名称(供查询构建器使用)?

要求将相同的值传递两次似乎有点麻烦:

E findByLowerLessThanOrEqualAndUpperGreaterThanOrEqual(Double a, Double b); // where a==b

只需用 @Param("amount") 标记您的参数,然后就可以按名称使用它:

@Query("select c from #{#entityName} c where c.lower <= :amount and c.upper >= :amount")