JPA は本質的に JDBC のより高度な抽象化です。EntityManager には API setAutoFlushMode があります。AUTO または COMMIT に設定できます。JDBC用語でこれに相当するものは何ですか? ありがとう
1598 次
1 に答える
4
JDBCには自動コミットもあります。
これらは両方とも、ライブラリがデータベースに自動的にコミットするかどうかを構成するためのものです。
JDBCの自動コミットは非常に単純で、データベースへのすべての更新をすぐにコミットします。自動コミットがないと、commitメソッドが呼び出されるまで変更はコミットされません。
JPA AUTOにより、クエリが実行される前にデータベースがフラッシュされます。ライブラリは検索を処理できるため、検索などの単純な操作ではフラッシュは必要ありませんが、クエリははるかに複雑になるため、AUTOが設定されている場合は、最初にフラッシュされます。モードがCOMMITに設定されている場合、コミットまたはフラッシュの呼び出し時にのみデータベースへの変更がフラッシュされます。COMMITが設定されていて、クエリが実行された場合、フラッシュされていない結果は返されません。
于 2012-04-05T22:44:53.217 に答える