while (rs.next())是什么意思??

jch_1989 2011-08-23 07:14:19
String sql = "select id,cid,name,age,birthday from stu where id=?";
Object[] params = { id };
ResultSet rs = db.executeSqlWithResult(sql, params);
while (rs.next()) {
s.setId(rs.getInt("id"));
s.setcName(rs.getString("cid"));
s.setName(rs.getString("name"));
s.setAge(rs.getInt("age"));
s.setBir(rs.getTimestamp("birthday"));

在这个程序中s.set的五个设置能不能改变顺序,能不能缺少哪一项????求解决,谢谢!!!
...全文
13179 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
张文学 2011-08-24
  • 打赏
  • 举报
回复
呵呵 正解. 就这个意思
[Quote=引用 2 楼 is_zhoufeng 的回复:]
rs.next(); 是游标向下移动一行的意思 ,放在while循环里面做循环条件,就是如果有下一行的意思。并且执行了游标的向下移动。
五个设置能改变顺序但是括号里面的参数也要一一对应。
比如下面这样也是可以的
while (rs.next()) {
s.setAge(rs.getInt("age"));
s.setBir(rs.getTimestamp("birthday"));
s……
[/Quote]
xie_aiyi 2011-08-24
  • 打赏
  • 举报
回复 1
解答的简单点,就是看看数据库有没有下条数据,没有就不遍历了,有的话就继续遍历,功能就是:遍历出数据库的所有数据。。。
xf_taoran 2011-08-24
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wangxf_8341 的回复:]
ResultSet.next()方法
将指针从当前位置下移一行。ResultSet 指针最初位于第一行之前;第一次调用 next 方法使第一行成为当前行;第二次调用使第二行成为当前行,依此类推。 如果如果新的当前行有效,则返回 true;如果不存在下一行,则返回 false
s.set是你自己定义的pojo吧,当然可以少一个了,没有顺序的
[/Quote]
+
zhao88148201 2011-08-24
  • 打赏
  • 举报
回复
ResultSet.next()方法
将指针从当前位置下移一行。ResultSet 指针最初位于第一行之前;第一次调用 next 方法使第一行成为当前行;第二次调用使第二行成为当前行,依此类推。 如果如果新的当前行有效,则返回 true;如果不存在下一行,则返回 false
s.set是你自己定义的pojo吧,当然可以少一个了,没有顺序的
lqqbeibei 2011-08-24
  • 打赏
  • 举报
回复
被他们答完了
飓风zj 2011-08-24
  • 打赏
  • 举报
回复
向下移动一行 看是否有值
pjg1989 2011-08-24
  • 打赏
  • 举报
回复
跟i++差不多,就是读下一行数据,顺序可以变
li498833284 2011-08-24
  • 打赏
  • 举报
回复
顺序可以改 看看数据库里 可以为空吗 有默认值吗
jinze1107 2011-08-23
  • 打赏
  • 举报
回复
在这个程序中s.set的五个设置能改变顺序,只要实体类中有这个属性就可以set进去,能不能缺少哪一项要看你数据库了的字段是不是可以为空,可以的话就可以缺少,否则的话插入的、更新的时候可能会报错的。
fjfpx 2011-08-23
  • 打赏
  • 举报
回复
意思是迭代,通过下一个数据来取出里面的数据!
wuhuipengwhp 2011-08-23
  • 打赏
  • 举报
回复
rs.next()是游标向下移动一行的意思 ,放在while循环里面做循环条件,就是如果有结果集的话,游标就会向下移动把所有的数据遍历出来
jisg_57 2011-08-23
  • 打赏
  • 举报
回复
当然可以,但是对应的名称和rs的取值对应不能变
老紫竹 2011-08-23
  • 打赏
  • 举报
回复
1 可以改变顺序
2 可以缺少某些列

Jeelon 2011-08-23
  • 打赏
  • 举报
回复
rs.next()是否存在吓一跳数据 返回boolean类型
根据你数据库表里面的设置 如果设置哪一项可以为空 当前可以少哪一项 如果数据库表里面字段设置不为空 这里少赋值了 在插入的时候会报错...
_jerrytiger 2011-08-23
  • 打赏
  • 举报
回复
rs.next(); 是游标向下移动一行的意思 ,放在while循环里面做循环条件,就是如果有下一行的意思。并且执行了游标的向下移动。
五个设置能改变顺序但是括号里面的参数也要一一对应。
比如下面这样也是可以的
while (rs.next()) {
s.setAge(rs.getInt("age"));
s.setBir(rs.getTimestamp("birthday"));
s.setcName(rs.getString("cid"));
s.setName(rs.getString("name"));
s.setId(rs.getInt("id"));
}
淡定的峰哥 2011-08-23
  • 打赏
  • 举报
回复
ResultSet.next()方法
将指针从当前位置下移一行。ResultSet 指针最初位于第一行之前;第一次调用 next 方法使第一行成为当前行;第二次调用使第二行成为当前行,依此类推。 如果如果新的当前行有效,则返回 true;如果不存在下一行,则返回 false
s.set是你自己定义的pojo吧,当然可以少一个了,没有顺序的

81,087

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧