Open1

DOMA2 fetchについてのメモ(Criteria API)

ふじしろふじしろ

https://doma.readthedocs.io/en/latest/criteria-api/#fetching-entityql-nativesql

fetch

The fetch method returns results as a list.

検索結果をリストとして返す。
-> 結果が0の場合は空配列が返ってくる

fetchOne

The fetchOne method returns a single result. The result may be null.

検索結果を単独で返す。結果はnullである可能性がある。
-> こちらは単独で返す関係上nullの可能性が存在する

fetchOptional

The fetchOptional method returns a single result as an optional object.

検索結果を単独でOptionalオブジェクトとして返す。
-> javaのOptionalオブジェクトとして結果を受け取ることができる。
-> NullPointerExceptionが怖い時はこれを使う感じになりそう

stream

The stream method returns results as a stream.
The following code is equivalent to "entityql.from(e).fetch().stream()"

検索結果をストリームとして返す。
entityql.from(e).fetch().stream()というコードと同等の意味を持つ。
-> 検索結果をストリームとしてそのまま処理したい時に使う感じっぽい。