におけるメソッドの有効性を保存します。春データJPAは、Java 8の機能マップ
我々は全体のリストを取り、古典的な
List<S> save(Iterable<S> entities)
メソッドを使用することができます。
例:someOtherRepository.save( someRepository.findAll() .stream() .map(something -> { //some operations return someOtherThing; }) .collect(Collectors.toList()) );
私たちは、単一のエンティティをとる
S save(S entity)
メソッドを使用してmap
でstream
でそれを使用することができます。
例:someRepository.findAll() .stream() .map(something -> { //some operations return someOtherThing; }) .map(someOtherRepository::save) .collect(Collectors.toList());
質問です:
は、これら2つのアプローチの実行時間の違いはありますか?はいの場合は、より効果的です(より速く)。
詳しくは教えてください。私は、saveメソッドを使用するたびにデータベースに新たに接続することを信じていません。これは、記述の悪いJDBCコードで発生する可能性がありますが、休止状態には接続プールがあります。特に2つの答えを読んだ後、私はあなたのことを信じていません。 – luke