根据异常信息判断是数据库查询出来的结果集被关闭了,所以就了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;
}

转载于:https://www.cnblogs.com/songlove/p/6073132.html

java.sql.SQLException: 关闭的 Resultset: next相关推荐

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

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

  2. java.sql.SQLException: 关闭的语句

    因为java没有指针的概念,所以有时候很难分清是值传递还是地址传递. Statement不是一个可以值传递的类,所以不管把它赋值给几个变量,它们都是同一个,只要其中任何一个关闭了,就相当于全都关闭了.

  3. java 流已被关闭_mybatis oracle java.sql.SQLException: 流已被关闭问题

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

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

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

  5. java.sql.SQLException: Before start of result set ---错误笔记

    错误提示:java.sql.SQLException: Before start of result set  解决方法:使用rs.getString();前一定要加上rs.next(); 原因:Re ...

  6. java.sql.SQLException: connection holder is null

    解决方案一: <!-- 是否自动回收超时连接 --> <property name="removeAbandoned" value="true" ...

  7. php column not found,java.sql.SQLException: Column 'cloumn name' not found.

    Hi, My system configuration: Mandrake 9.0 + Tomcat 4.1.24 + MySQL 4.0.12. + Apache [問題] 我有一隻Servlet ...

  8. java.sql.SQLException: Lock wait timeout exceeded

    2019独角兽企业重金招聘Python工程师标准>>> 先说我我的解决方法:找到锁住的线程然后kill掉. mysql> kill thr_id; 下面简单分析一下到底应该ki ...

  9. Java连接数据库出现java.sql.SQLException: After end of result set的原因

    源码 jb4.addActionListener(new ActionListener() {// 新增按钮事件监听器public void actionPerformed(ActionEvent e ...

最新文章

  1. java new arraylist_Java中ArrayList用法详解
  2. matlab-画个拱桥和倒影?
  3. 《淘宝网开店 进货 运营 管理 客服 实战200招》——2.3 开店需要掌握哪些 进货技巧...
  4. Linux查看关机时间
  5. rdb和aof优势劣势
  6. how is metadata got - DB table iwfndi_med_srh and IWFNDCL_MGW_REQUEST_MANAG
  7. HTTP 错误 404.2 - Not Found 由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面...
  8. java中缓冲区和缓存_Java中的Google协议缓冲区
  9. HTML中scr是图片的什么,HTML中关于url、scr、href的区别
  10. 2.分布式服务架构:原理、设计与实战 --- 彻底解决分布式系统一致性的问题
  11. SOUI使用过程知识点小结1
  12. 一次惨痛的微软AA面经历
  13. dede织梦后台页面及功能修改及精简操作方法
  14. GRUB4DOS加载ISO启动光盘完美解决方案
  15. jqury ajax 标准
  16. login主页面+接口+依赖
  17. 我们的管理:项目管理
  18. 工作了 需要学OC 写博客来总结学习中的重点 忘记了可以再看一看
  19. BUUCTF-网鼎杯2020-青龙组-joker
  20. Adobe Flash CS6 配置错误,错误代码:1

热门文章

  1. Altair FluxMotor 2020中文版
  2. discuz 二次开发文章
  3. Zend framework重定向的方法
  4. 孤荷凌寒自学python第三十八天初识python的线程控制
  5. 2-4 zookeeper配置文件介绍,运行zk
  6. [No000011B]为什么有些程序员悄无声息渡过35岁中年危机?
  7. HashMap负载因子
  8. JavaScript区分click事件和mousedown(mouseup、mousemove)方法
  9. 默认析构函数与空析构函数并不完全等价
  10. 运算符优先级和结合性