这个。。close 之前都是可以用的
如果你是想在连接里面再连接的时候做判断的话
可以考虑一下单例模式,取得同一个连接继续用

解决方案 »

  1.   

    要是不close应该是一直能用的
      

  2.   

    我有想法!!!!!!connecttion conn;
    …………if(conn。isClose())    如果返回ture  ,就是正在连接 反之,则断开!!!
      

  3.   

    错了,错了!!!!public boolean isClosed() throws SQLException判断conecttion 对象是否关闭,上面写错了!!!
      

  4.   

    这还要看你程序的具体构架,比如说,你的这个conecttion 在一个独立的模块内使用:
    1。但你在这个模块内没有明确处理关闭的轻快下,即使退出这个模块,连接还是没有关闭;
    2。但如果你定义了析构函数(在此函数内关闭连接),就另当别论了:虚拟机会定时清理,在你退出该模块的时候(可能还要等会,gc的线程是定时唤醒的),连接就不可用了,或者这是你明确调用System.gc(),这样conecttion 也会被关闭除却上述两种情况,你就可以用isClosed判断conecttion 的可用性了
      

  5.   

    如果你不了解System.gc()的具体工作,千万不要随便调用
      

  6.   

    可以测试一个SQL语句阿,
    比如Oracle: Select * from dual;
        MS SQL Server: Select * from sysobjects where (1=0)