你的BookDaoImpl 怎么继承一个BookDao又实现一个BookDao?
ResultSet rs=this.executeSQL(sql, params); 
你父类的executeSQL方法已经调用了 closeResource(); 方法
也就是在你调用rs.next()前,已经关闭了ResultSet!
所以就出错了!

解决方案 »

  1.   

    executeSQL调用里面关闭了ResultSet
      

  2.   

    是的,你父类BaseDao里的查询executeSQL方法里不要直接关闭closeResource();就是先别写finally,既然要用resultset,他是一旦和数据库断开,数据集里的数据也就没了,而且在子类也有finally方法,所以父类的就可以省了
      

  3.   

    你的BookDaoImpl 怎么继承一个BookDao又实现一个BookDao?
    ResultSet rs=this.executeSQL(sql, params); 
    你父类的executeSQL方法已经调用了 closeResource(); 方法
     也就是在你调用rs.next()前,已经关闭了ResultSet!
     所以就出错了! 我的的BookDaoImpl 是继承一个BaseDao又实现一个BookDao
         我现在找到错误原因了,就是因为我在BaseDao工具类里的executeSQL以及executeUpdate方法里的finally里多执行了closeResource关闭资源的方法,使得ResultSet被关闭了,很感谢楼上四位的指正!