是否有任何情况我们必须在使用JDBC时显式获取特定表上的锁以满足ACID模型的目标? (通过显式获取锁,我的意思是,使用select for update或lock table table_name等查询;即行级锁和表锁)
实例: 有一个表有这两列:
Account_Id Account_Balance。
在给定时间可以有许多线程,这将是读取和更新表的数据。我们如何防止出现脏读(使用数据库的默认隔离级别可能相对简单),不可重复读取和幻像读取?是否总是通过在获得的连接上设置隔离级别(使用Connection.setTransactionIsolation(级别))或是否有其他替代策略?