根据异常信息判断是数据库查询出来的结果集被关闭了,所以就了next

我的代码是一个Impl方法(假设为A方法)中调用另一个Impl方法(假设为B方法),我在执行完B方法后,调用了一下关闭数据库连接的方法,结果把A方法连接数据库给关闭了;

解决方法是把B方法中 关闭数据库连接的方法(即:super.close(con, pstmt, null, rs);)给删除了!

下面是我的出错误的代码:

/**
* 查询延期的任务
*/
@Override
public List<Extension> findPlanTask(String itemId) {
con = super.getConnection();
List<Extension> planTaskList=new ArrayList<Extension>();
Extension extension=null;
String sql="select yq_yjtzrq,yq_rwbh from qj_extension where yq_xmbh=?";
try{
pstmt=con.prepareStatement(sql);
pstmt.setString(1, itemId);
rs=pstmt.executeQuery();
while(rs.next()){

extension=new Extension();
extension.setYjtzrq(rs.getString("yq_yjtzrq"));
PlanTask plantask= selectPlantask(rs.getString("yq_rwbh"));
extension.setPlanTask(plantask);
planTaskList.add(extension);
}
}catch (SQLException e) {
e.printStackTrace();
}
super.close(con, pstmt, null, rs);
return planTaskList;
}

/**
* 根据延期计划的id查询任务
* @param pid
* @return
*/
private PlanTask selectPlantask(String pid) {
con = super.getConnection();
PlanTask planTask=null;
String sql="select planTask_rwbh,planTask_Rwzt,planTask_Rwjc,planTask_Jcms,planTask_Rwlb,planTask_Rwmc,planTask_Jhksrq,planTask_Jhwcrq from qj_plantask where planTask_jhbh=?";
try{
pstmt=con.prepareStatement(sql);
pstmt.setString(1, pid);
rs=pstmt.executeQuery();
while(rs.next()){
planTask=new PlanTask();
planTask.setPlanTaskRwbh(rs.getString("planTask_rwbh"));
planTask.setPlanTaskRwzt(rs.getString("planTask_Rwzt"));
planTask.setPlanTaskRwjc(rs.getInt("planTask_Rwjc"));
planTask.setPlanTaskJcms(rs.getString("planTask_Jcms"));
planTask.setPlanTaskRwlb(rs.getString("planTask_Rwlb"));
planTask.setPlanTaskRwmc(rs.getString("planTask_Rwmc"));
planTask.setPlanTaskJhksrq(rs.getString("planTask_Jhksrq"));
planTask.setPlanTaskJhwcrq(rs.getString("planTask_Jhwcrq"));
}
}catch (SQLException e) {
e.printStackTrace();
}

super.close(con, pstmt, null, rs);
return planTask;
}

java.sql.SQLException: 关闭的 Resultset: next的更多相关文章

  1. java.sql.SQLException: 关闭的连接 解决办法

    程序如果长时间不进行数据库操作,那么数据源中的 Connection 很可能已经断开.其原因有可能是防火墙,或者连接的数据库设置的超时时间.这里使用的是 C3P0 连接 oracle 数据库,引起的异 ...

  2. spring+ibatis问题1—— 程序报错:java.sql.SQLException: Io 异常: Connection reset by peer, socket write error; ”或“java.sql.SQLException 关闭的连接”异常

    转自:http://blog.sina.com.cn/s/blog_1549fb0710102whz2.html spring+ibatis程序测试时报错:java.sql.SQLException: ...

  3. java.sql.SQLException: 关闭的连接

    在Dao接口实现类里面的conn.close()之类的关闭数据库连接的代码注释掉就可以了. 可能还有别的解决方法,不过这样改比较方便.

  4. java.sql.SQLException: Io 异常: Connection reset

    当数据库连接池中的连接被创建而长时间不使用的情况下,该连接会自动回收并失效,但客户端并不知道,在进行数据库操作时仍然使用的是无效的数据库连接,这样,就导致客户端程序报“ java.sql.SQLExc ...

  5. mybatis oracle java.sql.SQLException: 流已被关闭问题

    /** * 按照页码取值(从current_page页开始,每页page_size条) * @param key * @param params * @param current_page * @pa ...

  6. java.sql.SQLException: Operation not allowed after ResultSet closed

    转自:http://blog.csdn.net/hellobobantang/article/details/7173622 java.sql.SQLException: Operation not ...

  7. resultset 对象获取行字段数据时报:java.sql.SQLException: Column 'id' not found.

    resultset 对象获取行字段数据时报:java.sql.SQLException: Column 'id' not found. 代码: String sql="SELECT d.co ...

  8. Caused by: java.sql.SQLException: ResultSet is from UPDATE. No Data.

    1.错误描述 org.hibernate.exception.GenericJDBCException: error executing work at org.hibernate.exception ...

  9. java之java.sql.SQLException: ResultSet is from UPDATE. No Data.

    问题解释:java调用存储过程的时候,查询结果不能通过ResultSet来查询,需要通过CallableStatement来查询, 比如: ResultSet rs = callableStateme ...

随机推荐

  1. 关于新版ADT创建项目时出现appcompat_v7的问题

    做Android开发的朋友最近会发现,更新ADT至22.6.0版本之后,创建新的安装项目,会出现appcompat_v7的内容.并且是创建一个新的内容就会出现.这到底是怎么回事呢?原来appcompa ...

  2. 取到 tableview 自定义section header 上的button

    在自定义的组头上,添加了一个button,在点击cell是想取到相应的组头上的button来进行操作时(比如说隐藏.是否响应点击事件等)时,我遇到了取不到所有button的问题,试过了常规的通过vie ...

  3. 去掉无用的多余的空格(string1.前后空格,2.中间空格)

    1.使用NSString中的stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]方法只是去掉左右两边的空格: ...

  4. 7. ensemble learning & AdaBoost

    1. ensemble learning 集成学习 集成学习是通过构建并结合多个学习器来完成学习任务,如下图: 集成学习通过将多个学习学习器进行结合,常可以获得比单一学习器更优秀的泛化性能 从理论上来 ...

  5. linux 查找文件的命令

    http://www.ruanyifeng.com/blog/2009/10/5_ways_to_search_for_files_using_the_terminal.html

  6. SpringMVC操作指南-整合Spring、SpringMVC、Hibernate、JUnit、Log4j、C3P0

  7. javascript数据结构和算法

    一.栈 javascript实现栈的数据结构(借助javascript数组原生的方法即可) //使用javascript来实现栈的数据结构 var Stack={ //不需要外界传参进行初始化,完全可 ...

  8. Apkplug 开发常见问题解答

    Android M (6.0) generatePackageInfo 偶现错误 出现这个现象之后会导致 BundleActivator.start() 方法不会被调用 6.0 方法签名 public ...

  9. Java 高精度数字

    BigInteger // 高精度整数 BigDecimal //高精度小数  小数位数不受限制

  10. Android Animation(动画)

    前言 Android 平台提供实现动画的解决方案(三种) 一.3.0以前,android支持两种动画: (1)Frame Animation:顺序播放事先做好的图像,与gif图片原理类似,是一种逐帧动 ...