你的代码如果仅仅是这样,肯定是错误的。首先你没有连接池,用来和数据库链接。
如:
Connection con = null;
Class.forName("weblogic.jdbc.mssqlserver4.Driver");
con = DriverManager.getConnection ("jdbc:weblogic:mssqlserver4:[email protected]","sa","");
Statement st = con.createStatement();
你连接的数据库不同,就要建立不同的驱动。

解决方案 »

  1.   

    看看 db1.query_rs(query_check1) 是怎么实现的
    可能是执行完sql后就把连接关闭了
      

  2.   

    有可能是你連接數據庫的bean有問題
    在這個方法query_rs中你可能把數據集和連接給關掉了
      

  3.   

    我想主要是你在你的javaBean里就关闭了ResultSet
    你到你的javaBean里看看是不是有rs.close这句话,如果有,
    那么执行完上面的ResultSet rs=db1.query_rs(query_check1);后就关闭数据库链接了,当执行到rs.next()时就会报错:java.sql.SQLException: ResultSet is closed
    at sun.jdbc.odbc.JdbcOdbcResultSet.checkOpen所以删掉javaBean里的close操作,把它放到你上面的jsp中if语句结束的后面我没看见你的Bean是怎么样的,只能这样推断,你试试
      

  4.   

    javabean中没有rs.class,有这样的代码不知道是不是关闭private void close()
    {
    try{
    if(con!=null)
    con.close();
    con=null;
    }
    catch(Exception sex)
    {
    //System.out.println(sex.toString());
    }
    }
    我把这个东西删除了,不好用,再恢复的时候就找不到数据库了 
    显示/crm/center.jsp:3: jsp:useBean can't find class `db.result_db'
      

  5.   

    倒.肯定是关了.
    你把*.class删了就找不到bean了.不是找不到数据库 -_-#
      

  6.   

    回复人: zzzz1234zzzz() ( ) 信誉:100  2003-11-20 11:11:00  得分:0 
     
     
      那将怎么生成.class文件啊
    ---------------------------------------------------------------------  
     
    晕!用javac编译阿。
    你应该在jsp中关闭数据库,把方法close()改成public,在jsp中从rs中取记录后调用。