2016-09-28 34 views
4

Spring JPAの例を使用して検索しようとしています。次のコードでは、ほとんどが要件に適合しています。Spring Data JPA example matcherを追加条件で使用する方法

public Page<Shop> findShops(Shop condition, Pageable pageable) { 
     ExampleMatcher matcher = ExampleMatcher.matching().withStringMatcher(StringMatcher.CONTAINING).withIgnoreCase(); 
     return shopDao.findAll(Example.of(condition, matcher), pageable); 
    } 

さらに、私はステータスがNOTと等しい場合のみ削除する必要があります。 何かのように、.withMatcher("status", notEqual()) またはおそらく.withMatcher("status", contains())リスト。

Example Matcherがこのようなことを行うことができるかどうか、わかりません。 誰も私にこれを手伝ってもらえますか?

答えて

0

WHERE節については、QBEは必要ありません。方法からの照会は十分なはずです:

Page<Shop> findByStatusNot(String status, Pageable page); 

http://docs.spring.io/spring-data/jpa/docs/current/reference/html/#jpa.query-methods.query-creation

+0

は、返信いただきありがとうございます。私はQBEがすべてを行うことができることを知っています。ExampleMatcherは、例(条件)に一致するSHOPを検索したいが、いくつかの追加条件があるので、この場合はユーザーフレンドリです。 QBEとExampleが一緒に動作するかどうかわかりません。とにかく何か考えている? –

+0

ありがとうございます。それは単一の条件ではありません。条件SHOPのすべての値が使用され、さらにステータスが「等しくない」必要があります。 –

関連する問題