2017-06-20 7 views
1

Spring Data JPAリポジトリのQuery Creationを見て、どのようにパラメータを再利用するのかと思います。Spring-Data-JPAリポジトリでパラメータを再利用するにはどうすればよいですか?

@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 
+0

テイクを一見:https://stackoverflow.com/questions/19417670/using-generics-in-spring-data-jpa-repositories –

答えて

1

ちょうど@Param("amount")であなたのパラメータをマークして、名前でそれを使用することができるようになります。

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

はい、これは完全にJPQLクエリのために動作します。私はSpELメソッドでどのようにパラメータを再利用できるのか知っていますか? –

関連する問題