【发布时间】:2014-06-25 11:06:01
【问题描述】:
在带有@Transactional 注释的方法中,LOCK TABLE 语句应该在try 块内还是之前执行?
选项 1:
jdbcTemplate.execute(SQL_LOCK);
try {
//Some work
} finally {
jdbcTemplate.execute(SQL_UNLOCK);
}
选项 2:
try {
jdbcTemplate.execute(SQL_LOCK);
//Some work
} finally {
jdbcTemplate.execute(SQL_UNLOCK);
}
谢谢, 迈克尔
【问题讨论】:
-
建议使用 try catch 块内的锁,因为它可以确保是否在 LOCKing 表上抛出任何异常
标签: java mysql locking spring-jdbc