web-dev-qa-db-ja.com

一致が見つからない場合のJPAクエリの戻り値

リポジトリで_Spring JPA named querys_を使用しています。私の問題は、どの結果にも一致しないクエリに対して返される値の情報がどこにも見つからないことです。 findOne()ではnullになると思いますが、findAllByName() functionではどうなるかわかりません。

誰かが彼/彼女の経験から知っているか、ドキュメントの場所を知っていますか?

13
xenteros

私の小さな個人的な経験から、たとえばIdまたはNameによってレポジトリのオブジェクトを検索すると、名前付きクエリメソッドはT型のオブジェクトを返しますが、レポジトリから結果が見つからない場合は、 nullを返します。

複数の要素を返すことができるメソッドは、空のコレクションList<T>(null以外)を生成します。

ここにいくつかのドキュメント: http://docs.spring.io/spring-data/jpa/docs/current/reference/html/#repository-query-keywords

付録D:リポジトリクエリの戻り値の型

サポートされるクエリ戻りタイプクエリ戻りタイプ:

T一意のエンティティ。クエリメソッドが最大で1つの結果を返すことを期待します。結果が見つからない場合はnullが返されます。複数の結果がIncorrectResultSizeDataAccessExceptionをトリガーします。

イテレータイテレータ。

戻り値の型がT型である場合にのみ一致するようです。一致するものがない場合はnullが返されます。

20
exoddus