如果用rs.next()是可以判断是否有结果集,但这会造成cursor moved,因为我不是立即就获取结果集,而是中间隔了一段代码之后又在执行 for (int i = 0; rs.next(); i++) 如下
if (rs != null && rs.next() ) {
......这里有一段代码分割开来了
for (int i = 0; rs.next(); i++) {
...获取结果集
}
.....
}
这样由于上述代码中的rs.next()执行了两次,就造成了cursor moved,这样就取不到第一行的数据而是只有从第二行开始的数据了.如果不用 rs.next() 来判断是否结果集中有数据,还有别的方法吗?这个问题究竟怎么解决?
if (rs != null && rs.next() ) {
......这里有一段代码分割开来了
for (int i = 0; rs.next(); i++) {
...获取结果集
}
.....
}
这样由于上述代码中的rs.next()执行了两次,就造成了cursor moved,这样就取不到第一行的数据而是只有从第二行开始的数据了.如果不用 rs.next() 来判断是否结果集中有数据,还有别的方法吗?这个问题究竟怎么解决?
解决方案 »
- 如何禁止外网访问某个war包,而内网用户可以
- 求java web版cms
- <c:if test=""></c:if> 提示test不能插入el
- 数据库中 编号补齐 问题
- eWebEditor在Liux 下显示乱码,为什么
- 关于配置realm之后,启动tomcat报错
- 关于createStatement方法导致tomcat自动关闭问题
- 运行的时候怎么找不到tomcat的目录里的startup.bat文件,我装的是tomcat5.5
- 文件和目录(I/O)操作问题归类,大家来看看如何做,有什么好的方法
- 关于javabean的问题
- svn提交不了
- Struts2上传下载异常 java.lang.IllegalStateException
if (rs != null && rs.next() ) {
......这里有一段代码分割开来了
rs.previous();
for (int i = 0; rs.next(); i++) {
...获取结果集
}
.....
}
......这里有一段代码分割开来了//不知道你这里是处理什么的?
for (int i = 0; rs.next(); i++) {
...获取结果集
}
.....
}这不行吗?是在不想,你只能再查询一次了。
我前面的代码是 rs != null && rs.next() 而不是 rs != null 注意这个rs.next()的执行会导致cursor moved,而我后面又要再次用到rs.next(),这样游标的位置就变了