Frage

ich die Migration nur ein unsere Anwendungen aus reiner JDBC Spring JDBCTemplate. Ich frage mich, wie eine Schreibsperre für eine Tabelle erstellen. Sie führe ich nur eine „LOCK TABLE foo“ Query oder gibt es eine Möglichkeit, dies generalisized in JDBCTemplate zu tun?

Danke!

War es hilfreich?

Lösung

JdbcTemplate verwendet eine Datasource, es ist so nicht gewährleistet, dass Sie die gleiche Verbindung für die LOCK TABLE-Anweisung verwenden und was auch immer Sie in dem nächsten Anruf zu JdbcTemplate tun werden. So ist es wichtig, dass Sie dies in einer Transaktion. Richten Sie eine PlatformTransactionManager, entweder eine DataSourceTransactionManager auf dem JdbcTemplate Datasource oder einen JtaTransactionManager wenn die JdbcTemplate einen Container bereitgestellte JNDI Datasource. Sie können Ihre Methode als @Transactional mit Anmerkungen versehen oder eine Transaktion erstellen programmatisch die PlatformTransactionManager verwendet wird.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top