EntityTransaction.commit()を呼び出すと、自動的にEntityManager.flush()が呼び出されますか?
はい
違いは何ですか?
flush()では、データへの変更は、flushが発生した後、データベースに反映されますが、transaction.flush()はトランザクションコンテキストで囲まれている必要があり、必要な場合を除いて明示的に行う必要はありません(まれに) )、EntityTransaction.commit()があなたに代わってそれを行うとき。
ソース