resultset中游标指向(关于Resultset next()方法,空指针问题)
本文目录
- 关于Resultset next()方法,空指针问题
- 下面选项,关于ResultSet中游标指向的描述正确的是( )
- 如何判断resultset是否为空
- 高手帮忙import *****是什么意思啊
- ResultSet游标移动和,值获取,错误!
关于Resultset next()方法,空指针问题
如果你的空指针报错位置是在while(*****()),那你就要检查while循环里面是不是对rst做了什么操作有可能会导致rst变成null的
如果你的报错位置是在if (*****()),那你就要检查执行rst2=stmt****cuteQuery(...)的时候rst2是不是不为null了
目前知道就这两点
下面选项,关于ResultSet中游标指向的描述正确的是( )
【答案】:B
本题考察学生对RsultSt对象的掌握。RsultSt对象初始化时,游标在表格的第一行之前
如何判断resultset是否为空
rs刚打开是指针是指在第一条记录之前的,就是beforeFirst
if(*****())
{
//如果rs不为空,则指向第一条记录
}
else
{
//rs为空
}
jim1516(网无忌) :如果那不为空呢.我要去取数据,这回你的游标(指针)已经指向到了第一条记录了.
如果你还用*****()那指针就指向了第二条数据了.第一条也就丢失了.如果要把所有的记录取出.用
你的方法,必须往回指。
高手帮忙import *****是什么意思啊
导入一个类,类名是*****(注意,前面是包名)
ResultSet,顾名思义,是结果集的意思。
ResultSet其实是一个接口,由Statement(句柄对象).getResultSet()方法返回它ResultSet的实现类的对象。
ResultSet的实现类到底是干什么的呢?
它是用来存放从数据库里取出的结果集的对象。(其实不是存放数据,不过你可以暂时这么想象)。
ResultSet有一个游标指针,通过控制它你可以得到数据库里取出来的数据的任何一行中的任何一个单元。
数据集可以想象一张二维表(类似于Excel那样的表格)
ResultSet一开始的游标在表头部(注意不是第一行,是第一行的上面一行),用next()方法移向下一行。用getXXX(x)方法取得这一行的某个元素。
x是取第几列的意思。
注意getXXX只是一个代替,具体有如下几种常用方法
getString
getLong
getInteger
getFloat
getDate
getTime
getObject
...
每一种取出来都返回成get后面对对应的类型(当然要保证数据就是那种类型或者可以转换成那种类型)
这时候你可以用一个二维循环取出它全部的数据
具体用法,请参考JDK帮助文档。
ResultSet游标移动和,值获取,错误!
这个其实不仔细想的话也应该能猜得到,问题就是越界了。如果你想快速解决问题,那么很简单,确保你每次调用getInt之前的那句next的返回值都检查过是否为true
接下来说一下next()的作用,ResultSet相当于一个指针(或者称之游标)指向一个集合中的元素。next每次将这个游标指向当前元素的下一个元素,并返回true,如果当前已经是最后一个元素了,那么返回*****()方法本身不会抛异常。
代码1:在while循环中,你调用next()方法时,rs表示的游标可能已经指向末尾了,因此你在它之上调用next()会返回false(但你没有检查),接下来再调用getInt会抛错
代码2:不抛错,因为你调用了next以后立马调用了previous,保证你不会对越界的元素做任何操作
代码3:这个代码不抛错并不表示这个代码不会抛错。你不抛错的原因是你的resultset的元素个数是偶数。所以你每个while循环消耗两行数据,最后末尾的时候会被你的while循环检测到
更多文章:
resultset中游标指向(关于Resultset next()方法,空指针问题)
2026年4月24日 04:40
程序员it培训学习(程序员培训要学多久学it一年学费大概多少)
2026年4月24日 04:20
linux打开共享文件夹命令(如何在Windows系统和KaliLinux系统之间共享文件)
2026年4月24日 03:40
matlab教程实验答案(求MATLAB高手解答,好的加悬赏~)
2026年4月24日 03:20
linux安装svn(请教,arm linux下能安装svn服务端吗)
2026年4月24日 02:40
怎么从零开始学英语音标(从零开始学英语口语 有没有从音标学起的)
2026年4月24日 02:20
java设置数组可变长度(java怎么重新定义int数组长度)
2026年4月24日 02:00
android系统签名和root(新的版本root更新不了 说签名不一致怎么解决呢)
2026年4月24日 01:40



