インターフェース ReactiveQuerydslPredicateExecutor<T>
public interface ReactiveQuerydslPredicateExecutor<T>
Querydsl
Predicate
インスタンスを使用してクエリを発行するためのインターフェース。ReactiveCrudRepository
インターフェースと共に使用して、Querydsl サポートに接続することを目的としています。
public interface PersonRepository extends ReactiveCrudRepository<Person, String>, ReactiveQuerydslPredicateExecutor<Person> {
}
// ...
personRepository.findOne(QPerson.person.email.eq("t-800@skynet.io"))
.flatMap(t800 ->
//....
重要 : Querydsl がサポートされているかどうかは、モジュール固有のドキュメントを確認してください。- 導入:
- 2.2
- 作成者:
- Mark Paluch, Christoph Strobl
メソッドのサマリー
修飾子と型メソッド説明reactor.core.publisher.Mono<LongSE>
count
(com.querydsl.core.types.Predicate predicate) 指定されたPredicate
に一致するインスタンスの数を放出するMono
を返します。reactor.core.publisher.Mono<BooleanSE>
exists
(com.querydsl.core.types.Predicate predicate) データストアに、指定されたPredicate
と一致する要素が含まれているかどうかを確認します。reactor.core.publisher.Flux<T>
findAll
(com.querydsl.core.types.OrderSpecifier<?>... orders) 指定されたOrderSpecifier
で順序付けられたすべてのエンティティを放出するFlux
を返します。reactor.core.publisher.Flux<T>
findAll
(com.querydsl.core.types.Predicate predicate) 指定されたPredicate
に一致するすべてのエンティティを放出するFlux
を返します。reactor.core.publisher.Flux<T>
findAll
(com.querydsl.core.types.Predicate predicate, com.querydsl.core.types.OrderSpecifier<?>... orders) 指定されたOrderSpecifier
を適用して、指定されたPredicate
に一致するすべてのエンティティを放出するFlux
を返します。reactor.core.publisher.Flux<T>
<S extends T,
R, P extends org.reactivestreams.Publisher<R>>
PfindBy
(com.querydsl.core.types.Predicate predicate, FunctionSE<FluentQuery.ReactiveFluentQuery<S>, P> queryFunction) クエリとその結果型を定義するqueryFunction
SE を適用して、指定されたPredicate
に一致するエンティティを返します。reactor.core.publisher.Mono<T>
findOne
(com.querydsl.core.types.Predicate predicate) 指定されたPredicate
またはMono.empty()
に一致するエンティティが見つからない場合は、それを放出するMono
を返します。
メソッドの詳細
findOne
指定されたPredicate
またはMono.empty()
に一致するエンティティが見つからない場合は、それを放出するMono
を返します。- パラメーター:
predicate
- null であってはなりません。- 戻り値:
- 指定された
Predicate
またはMono.empty()
に一致する単一のエンティティを放出するMono
が見つからなかった場合。 - 例外:
IllegalArgumentExceptionSE
- 必須パラメーターが null の場合。IncorrectResultSizeDataAccessException
- 述語が複数の結果をもたらす場合。
findAll
指定されたPredicate
に一致するすべてのエンティティを放出するFlux
を返します。一致が見つからなかった場合、Flux
はアイテムを発行しません。- パラメーター:
predicate
- null であってはなりません。- 戻り値:
- 指定された
Predicate
に 1 つずつ一致するすべてのエンティティを放出するFlux
- 例外:
IllegalArgumentExceptionSE
- 必須パラメーターが null の場合。
findAll
指定されたSort
を適用して、指定されたPredicate
に一致するすべてのエンティティを放出するFlux
を返します。一致するものが見つからなかった場合、Flux
はアイテムを発行しません。- パラメーター:
predicate
- null であってはなりません。sort
- 結果をソートするためのSort
仕様。Sort.unsorted()
の場合もあり、null であってはなりません。- 戻り値:
- 指定された
Predicate
に 1 つずつ一致するすべてのエンティティを放出するFlux
- 例外:
IllegalArgumentExceptionSE
- 必須パラメーターのいずれかが null の場合。
findAll
reactor.core.publisher.Flux<T> findAll(com.querydsl.core.types.Predicate predicate, com.querydsl.core.types.OrderSpecifier<?>... orders) 指定されたOrderSpecifier
を適用して、指定されたPredicate
に一致するすべてのエンティティを放出するFlux
を返します。一致するものが見つからなかった場合、Flux
はアイテムを発行しません。- パラメーター:
predicate
- null であってはなりません。orders
- 結果をソートするOrderSpecifier
。- 戻り値:
- 指定された
OrderSpecifier
を適用して、指定されたPredicate
に一致するすべてのエンティティを放出するFlux
- 例外:
IllegalArgumentExceptionSE
- 必須パラメーターの 1 つが null であるか、null 値が含まれている場合。
findAll
指定されたOrderSpecifier
で順序付けられたすべてのエンティティを放出するFlux
を返します。- パラメーター:
orders
- 結果をソートするOrderSpecifier
。- 戻り値:
- 指定された
OrderSpecifier
によって順序付けられたすべてのエンティティを放出するFlux
- 例外:
IllegalArgumentExceptionSE
-OrderSpecifiers
の 1 つが null です。
count
指定されたPredicate
に一致するインスタンスの数を放出するMono
を返します。- パラメーター:
predicate
- インスタンスをカウントするPredicate
。null であってはなりません。- 戻り値:
Predicate
または0
と一致するインスタンスが見つからない場合は、それに一致する数のインスタンスを出力するMono
- 例外:
IllegalArgumentExceptionSE
- 必須パラメーターが null の場合。
exists
データストアに、指定されたPredicate
と一致する要素が含まれているかどうかを確認します。- パラメーター:
predicate
- 存在チェックに使用するPredicate
は null であってはなりません。- 戻り値:
- 指定された
Predicate
と一致する要素がデータストアに含まれている場合はMono
が true を出力し、それ以外の場合は false を出力します。 - 例外:
IllegalArgumentExceptionSE
- 必須パラメーターが null の場合。
findBy
<S extends T,R, P findByP extends org.reactivestreams.Publisher<R>> (com.querydsl.core.types.Predicate predicate, FunctionSE<FluentQuery.ReactiveFluentQuery<S>, P> queryFunction) クエリとその結果型を定義するqueryFunction
SE を適用して、指定されたPredicate
に一致するエンティティを返します。queryFunction
で使用されるクエリオブジェクトは、findBy(…)
メソッド呼び出し内でのみ有効です。クエリがfindBy(…)
メソッド内で実行されるようにするには、クエリ関数がFluentQuery
オブジェクト自体ではなくクエリ結果を返す必要があります。- パラメーター:
predicate
- null であってはなりません。queryFunction
- 射影、並べ替え、結果型を定義するクエリ関数- 戻り値:
- 指定された
Predicate
に一致するすべてのエンティティ。 - 導入:
- 2.6