JPA ist im Wesentlichen eine höhere Abstraktion von JDBC. EntityManager hat eine API setAutoFlushMode. Es kann auf AUTO oder COMMIT eingestellt werden. Was ist das Äquivalent zu JDBC? dankeEntityManger Spülmodus in JDBC
Antwort
JDBC hat auch Auto Commit.
Sie dienen beide zur Konfiguration, ob die Bibliothek automatisch an die Datenbank übergeben werden soll.
JDBCs Auto-Commit ist sehr einfach, es wird jedes Update sofort an die Datenbank übergeben. Ohne Auto-Commit werden Änderungen erst dann festgeschrieben, wenn die Methode commit aufgerufen wird.
JPA AUTO verursacht eine Flush zur Datenbank, bevor eine Abfrage ausgeführt wird. Einfache Operationen wie find erfordern keine Spülung, da die Bibliothek die Suche bewältigen kann. Abfragen wären jedoch sehr viel komplizierter, und wenn AUTO eingestellt ist, wird sie zuerst geleert. Wenn der Modus auf COMMIT festgelegt ist, werden die Änderungen nur bei einem Aufruf von Commit oder Flush in die Datenbank übertragen. Wenn COMMIT festgelegt ist und eine Abfrage ausgeführt wird, gibt es keine Ergebnisse zurück, die nicht gelöscht wurden.
- 1. Ein entityManger findet Entität, die andere nicht
- 2. Null-EntityManger im Frühjahr reparieren MVC-Anwendung?
- 3. Spring JDBC vs JDBC
- 4. Spring Data JPA: Repositories für mehrere Datenbank/Entitymanger-Konfigurationen
- 5. Objektzuordnung in Spring JDBC?
- 6. Anfänger in jdbc
- 7. Transaktionszustand in JDBC
- 8. Anweisungen in jdbc
- 9. Zeichensatz in JDBC
- 10. Reguläre Ausdrücke in JDBC
- 11. Wie Sie eine JDBC-Verbindung von JNDI in Spring JDBC
- 12. JDBC-Zeichencodierung
- 13. Multithread JDBC
- 14. JDBC ClassNotFoundException
- 15. Datenbank in JDBC-Sqlite erstellen
- 16. Lesen großer Ergebnismengen in JDBC
- 17. JDBC in Web Service Glassfish
- 18. JDBC Batch-Erstellung in Sybase
- 19. Versuchen, zwei Verbindungsobjekte in JDBC
- 20. PostgresSQL query_to_xml in JDBC PreparedStatement
- 21. JDBC-Verbindungsleck im JDBC-Pool bei Verwendung von AQ
- 22. Monitor JDBC-Verbindungen
- 23. Hibernate- und JDBC-Leistung?
- 24. Oracle-Verbindung mit JDBC
- 25. Leistungsprobleme mit JDBC
- 26. JDBC Drill Abhängigkeitsprobleme
- 27. JDBC Löschen Conditional Statement
- 28. JDBC: leer/null Ergebnismenge?
- 29. JDBC PoolingDataSource vs PoolingDriver
- 30. Spring JDBC Konnte die JDBC-Treiberklasse nicht laden [oracle.jdbc.driver.OracleDriver]
Danke. Wenn JPA auf automatisches Leeren zu den Datenbanken eingestellt ist, wird die Transaktion durchgeführt? Warum ist eine Abfrage anders? – dublintech
Nein, die Transaktion wird nicht ausgeführt. "Finden" ist nur ein gebräuchliches Wort für eine Kategorie von Abfragen, wie zum Beispiel: "findById". – esej