解决方案 »

  1.   

    因为一个事务内只进行了一次查询,只要防止脏读就行了。conn.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);
      

  2.   

    源代码还没有取消事务的自动提交。那么应该会有很多事务吧。怎么分比较合理呢难道下面的不是关闭连接?事务肯定提交了啊。finally { 
                 DbUtils.closeQuietly(rs); 
                 try { 
                     DbUtils.close(preparedStatement); 
                 } catch (SQLException e) { 
                     e.printStackTrace(); 
                 } 
                 DbUtils.closeQuietly(conn); 
             } 
      

  3.   

    源代码还没有取消事务的自动提交。那么应该会有很多事务吧。怎么分比较合理呢难道下面的不是关闭连接?事务肯定提交了啊。finally { 
                 DbUtils.closeQuietly(rs); 
                 try { 
                     DbUtils.close(preparedStatement); 
                 } catch (SQLException e) { 
                     e.printStackTrace(); 
                 } 
                 DbUtils.closeQuietly(conn); 
             } 
    上面那段程序有两条sql语句,一个select一个update,他没有取消自动提交,所以默认是select一个事务,update一个事务(说错的地方请指正),是这样吗?