PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

JPA flush vs commit

si nous appelons EntityTransaction.commit(), appelle-t-il automatiquementEntityManager.flush() ?

Oui

quelle est la différence ?

Dans flush(), les modifications apportées aux données sont reflétées dans la base de données après avoir rencontré flush, mais elles sont toujours dans transaction.flush() DOIT être enfermée dans un contexte de transaction et vous n'avez pas à le faire explicitement sauf si nécessaire (dans de rares cas ), quand EntityTransaction.commit() le fait pour vous.

Source