应该是在某处出错后没有关闭连接而导致连接变成了死连接,你再仔细看一看有哪个地方没有写close.依照现在的情况就算你将用户加到100个也会出现同样的错误的.

解决方案 »

  1.   

    支持上面兄弟的说法,不仅要在代码中保证数据连接被关闭,
    而且每个ResultSet对象,每个Statement对象在使用后必须关闭,否则数据库的Cursor也会用光!
    建议按照如下格式书写对数据库访问的代码:
      Connetion dbCon=null;
        Statement stmt=null;
        ResultSet resultSet=null
        try
        {
            dbCon=.....//从缓冲池中获取数据库连接,最好封装成一个类。
         stmt=dbCon.CreateStatement();
             resultSet=stmt.executeQuery(sql);
             ...
             ...
             ...
        }
        finally
        {
            if (resultSet!=null) resultSet.Close();
            if (stmt!=null) stmt.Close();
            if (dbCon!=null) dbCon.Close();
        }