xiaoshiniudao 2011-05-15 09:46
浏览 215
已采纳

Object has been closed.

Connection conn= DbUtil.getConnection();
Statement stmt=null;

System.out.println(conn+"&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&");
stmt=conn.createStatement();
System.out.println(conn+"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
ResultSet rs = stmt.executeQuery("select * from exam order by exam_id");

显示为:
com.microsoft.jdbc.sqlserver.SQLServerConnection@161dfb5&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Object has been closed.
at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.validateClosedState(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.createStatement(Unknown Source)
at com.microsoft.jdbc.base.BaseConnection.createStatement(Unknown Source)
at com.sdjzglxy.jwMis.dao.ExamDaoImpl.queryExams(ExamDaoImpl.java:87)
at com.sdjzglxy.jwMis.jwMisFrame.JwMisFrame.createQueryPanel(JwMisFrame.java:421)
at com.sdjzglxy.jwMis.jwMisFrame.JwMisFrame.(JwMisFrame.java:96)
at com.sdjzglxy.jwMis.jwMisFrame.JwMisFrame.main(JwMisFrame.java:719)
我觉得问题是这段代码:stmt=conn.createStatement();
因为我打印了conn它并不为null,但是执行stmt=conn.createStatement();却提示数据库已经关闭。我想问一下,究竟该如何解决。

  • 写回答

6条回答 默认 最新

  • iihero_ 《SybaseASE15.X全程实践》书籍作者 2011-05-16 09:11
    关注

    [quote]final public static void colse(ResultSet rs, Statement stmt, Connection conn)throws Exception {

    if (conn != null || !conn.isClosed()) {

    conn.close();

    conn = null;

    } else {

    if (stmt != null) {

    stmt.close();

    stmt = null;

    } else {

    if (rs != null) {

    rs.close();

    rs = null;

    }

    }
    }
    }

    }
    我的DbUtil是这样写的,帮忙看一下是否正确!谢谢 [/quote]

    这样写:

    if (rs != null)
    {
    rs.close(); rs = null;
    }
    if (stmt != null)
    {
    stmt.close(); stmt = null;
    }
    if (conn != null)
    {
    conn.close(); conn = null;
    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集