6

我只是将我们的一个应用程序从纯 JDBC 迁移到 Spring 的 JDBCTemplate。我想知道如何为表创建写锁。我只是执行“LOCK TABLE foo”查询还是在 JDBCTemplate 中有通用的方法来执行此操作?

谢谢!

4

1 回答 1

9

JdbcTemplate 使用数据源,因此不能保证您将使用相同的连接来执行 LOCK TABLE 语句以及在下一次调用 JdbcTemplate 时将要执行的任何操作。因此,在事务中执行此操作很重要。设置 PlatformTransactionManager,可以是 JdbcTemplate 的 DataSource 上的 DataSourceTransactionManager,如果 JdbcTemplate 使用容器提供的 JNDI DataSource,则设置 JtaTransactionManager。您可以将您的方法注释为 @Transactional 或使用 PlatformTransactionManager 以编程方式创建事务。

于 2009-05-14T15:35:25.530 回答