没问题啊,就是这样的,Connection从DataSource获取就可以了

解决方案 »

  1.   

    没有完全关闭,用try{
    Connection conn = null; 
    PreparedStatement ps = null; 
    ResultSet rs = null; 
    DataSource ds =(DataSource) new InitialContext().lookup("jdbc/aqxt"); 
    ps = conn.prepareStatement(strSql); 
    rs = ps.executeQuery(); 
    }catch(){
    }finally{
              if(rs != null){ 
                    rs.close(); 
                } 
                if(ps != null){ 
                    ps.close(); 
                } 
                if(conn!=null){ 
                    conn.close(); 
                    conn = null; 
                } 
    }试试
      

  2.   

    在Context 标签里把 这3个属性值 maxIdle,maxWait,maxActive,设高点试试
      

  3.   

    我不知道错误提示中的max-pool-size 是数据库中的,还是你设置的数据库连接池中的
    如果是数据库连接池中的,则conncetion无需关闭,放回池中就可以。
    如果是数据库的参数,则说明你连接的数量太多了,数据库允许的最大连接数已经用完,建议使用连接池管理你的连接,将连接池的最大参数设置小于数据库的最大允许连接数。
      

  4.   

    TO chjx1982 
    其实我是用你说的那种方式关的,我只是为了让你们看起来简单一点才没拷上去的
      

  5.   

    to dracularking 
    不是这样的,重启后,用一段时间又不行了
      

  6.   

    to miaoliujun 
    我知道你的意思了,我试一下,把连接池改小的点
      

  7.   

    可能是你的连接没有完全关闭而连接数有到了最大值不能再创建连接导致抛出异常看看代码,在catch和finally中该关闭的都关闭。不要有遗漏。