java.sql.SQLException: 关闭的 Resultset: next
根据异常信息判断是数据库查询出来的结果集被关闭了,所以就了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的更多相关文章
- java.sql.SQLException: 关闭的连接 解决办法
程序如果长时间不进行数据库操作,那么数据源中的 Connection 很可能已经断开.其原因有可能是防火墙,或者连接的数据库设置的超时时间.这里使用的是 C3P0 连接 oracle 数据库,引起的异 ...
- 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: ...
- java.sql.SQLException: 关闭的连接
在Dao接口实现类里面的conn.close()之类的关闭数据库连接的代码注释掉就可以了. 可能还有别的解决方法,不过这样改比较方便.
- java.sql.SQLException: Io 异常: Connection reset
当数据库连接池中的连接被创建而长时间不使用的情况下,该连接会自动回收并失效,但客户端并不知道,在进行数据库操作时仍然使用的是无效的数据库连接,这样,就导致客户端程序报“ java.sql.SQLExc ...
- mybatis oracle java.sql.SQLException: 流已被关闭问题
/** * 按照页码取值(从current_page页开始,每页page_size条) * @param key * @param params * @param current_page * @pa ...
- java.sql.SQLException: Operation not allowed after ResultSet closed
转自:http://blog.csdn.net/hellobobantang/article/details/7173622 java.sql.SQLException: Operation not ...
- resultset 对象获取行字段数据时报:java.sql.SQLException: Column 'id' not found.
resultset 对象获取行字段数据时报:java.sql.SQLException: Column 'id' not found. 代码: String sql="SELECT d.co ...
- Caused by: java.sql.SQLException: ResultSet is from UPDATE. No Data.
1.错误描述 org.hibernate.exception.GenericJDBCException: error executing work at org.hibernate.exception ...
- java之java.sql.SQLException: ResultSet is from UPDATE. No Data.
问题解释:java调用存储过程的时候,查询结果不能通过ResultSet来查询,需要通过CallableStatement来查询, 比如: ResultSet rs = callableStateme ...
随机推荐
- [bzoj1087][scoi2005]互不侵犯king
题目大意 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上 左下右上右下八个方向上附近的各一个格子,共8个格子. 思路 首先,搜索可以放弃,因为这是一 ...
- iOS - + initialize 与 +load
一.+ initialize 方法和+load 调用时机 首先说一下 + initialize 方法:苹果官方对这个方法有这样的一段描述:这个方法会在 第一次初始化这个类之前 被调用,我们用它来初始化 ...
- jqxComboBox
var uptype_source = [{ "TYPE_DESC": "总额度", " }, { "TYPE_DESC": &q ...
- Mac mySql ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)的解决办法
我的环境:Mac 10.11.6 ,mysql 5.7.14 . mac mySql 报错ERROR 2002 (HY000): Can't connect to local MySQL serv ...
- WinEdt 10 - revise the day to register
步骤: options -> option interface -> Advanced Configuration -> Event Handlers -> Exit 然后,在 ...
- hadoop(2014/0619)
map-reduce :分解任务和合并任务的能力 hdfs: namenode and datanode namenode放置元数据 datanoe放置数据
- java.util.concurrent.atomic 包详解
Atomic包的作用: 方便程序员在多线程环境下,无锁的进行原子操作 Atomic包核心: Atomic包里的类基本都是使用Unsafe实现的包装类,核心操作是CAS原子操作 关于CAS compar ...
- mybatis---实现关联表查询
推荐学习博客: 1.http://www.cnblogs.com/xdp-gacl/p/4264440.html 2.http://www.cnblogs.com/yaobolove/p/544404 ...
- MsChart在MVC下的问题
项目为webform和mvc混用,新建了Areas,在Areas目录下的aspx页面的图表无法显示. 解决方案 第一种方法: 将控件的ImageStorageMode设置为UseImageLocati ...
- XMLtank测试记录
1.首先就是这个分辨率对于高分屏的电脑适应太差了....立马让我有弃的想法..(如图) 2.游戏结束之后每次都要从第一关开始,很不方便.建议加入选关功能. 3.鼠标控制不方便,尤其是左键和右键分别控制 ...