Spring JDBCTemplate与MySQL的表锁定

6

我刚刚将我们的一个应用程序从纯JDBC迁移到了Spring的JDBCTemplate。我想知道如何为表创建写锁。我只需执行“LOCK TABLE foo”查询,还是在JDBCTemplate中有一种通用的方法可以实现这一点?

谢谢!

1个回答

9

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接