精华内容
下载资源
问答
  • ResultSet

    2020-06-09 20:08:09
    ResultSet详解 ResultSet对象具有指向其他数据行的光标,最初光标被置于第一行之前,next方法将光标移到下一行,该方法在ResultSet对象没有下一行时返回false,可以使用while循环来迭代结果集。 默认的ResultSet对象...

    ResultSet简单讲解

    ResultSet对象具有指向其他数据行的光标,最初光标被置于第一行之前,next方法将光标移到下一行,该方法在ResultSet对象没有下一行时返回false,可以使用while循环来迭代结果集。

    默认的ResultSet对象不可更新,仅有一个向前移动的光标,因此只能迭代它一次,并且只能按第一行到最后一行的顺序,也可以生成滚动和或可更新的ResultSet对象。

    ResultSet 接口提供用于从当前行获取列值的获取方法,可以使用列的索引编号或列的名称获取值。一般情况下,使用列索引较为高效,列从 1 开始编号。为了获得最大的可移植性,应该按从左到右的顺序读取每行中的结果集列,每列只能读取一次。

    用列名称调用获取方法时,如果多个列具有这一名称,则返回第一个匹配列的值,对于没有在查询中显式指定的列,最好使用列编号,如果使用列名称,则应该注意保证名称唯一引用预期的列。

    在可滚动的 ResultSet 对象中,可以向前和向后移动光标,将其置于绝对位置或相对于当前行的位置。

    生成可滚动且不受其他更新影响的可更新结果集
    在这里插入图片描述
    TYPE_SCROLL_INSENSITIVE: 该常量指示可滚动但通常不受 ResultSet 底层数据更改影响的 ResultSet 对象的类型。
    CONCUR_UPDATABLE:该常量指示可以更新的 ResultSet 对象的并发模式。

    更新当前行中的值
    在这里插入图片描述
    更新 ResultSet 对象 rs 第五行中的 name 列,然后使用方法 updateRow 更新导出 rs 的数据源表。

    absolute(int row): 将光标移动到此 ResultSet 对象的给定行编号。
    updateString(String columnLabel, String x) : 用 String 值更新指定列。
    updateRow(): 用此 ResultSet 对象的当前行的新内容更新底层数据库。

    当生成 ResultSet 对象的 Statement 对象关闭、重新执行或用来从多个结果的序列获取下一个结果时,ResultSet 对象将自动关闭。

    展开全文
  • Resultset

    2020-09-16 18:18:03
    JAVA中Resultset() 方法返回的结果集是什么类型? 表示数据库结果集的数据表,通常通过执行查询数据库的语句生成。 是接口 //2.从行检索出列值 //入门程序已经给出了,这里不再描述 //可以根据索引来获取对应的列值...

    JAVA中Resultset() 方法返回的结果集是什么类型?

    表示数据库结果集的数据表,通常通过执行查询数据库的语句生成。
    是接口

    //2.从行检索出列值
    
    //入门程序已经给出了,这里不再描述
    //可以根据索引来获取对应的列值,也可以根据列名获取列值,
    //这里的列名可以使列的别名, 根据列名获取列的值的时候,这里输入名称可以大写也可以是小写
    while(resultSet.next()){
                    User user = new User();
                    user.setId(resultSet.getInt("id"));
                    user.setUsername(resultSet.getString("username"));
                    user.setSex(resultSet.getString("sex"));
                    user.setBirthday(resultSet.getTimestamp("birthday"));
                    user.setAddress(resultSet.getString("address"));
                    userList.add(user);
                }
    
    
    

    ResultSet基本使用

    1.直接使用get方法获取对应的类型的数据,当然需要结合while(resultset.next())
    
      如:
    
    ResultSet rs = ps.executeQuery();
    if(rs.next()){
      employee=new Employee(rs.getLong(1),rs.getString(2),rs.getString(3),rs.getInt(4));
    }
    
    ResultSet result = stmt.executeQuery("SELECT * FROM message");
      baiwhile(result.next()) ...{
      result.getString(1) ;
      result.getString(2) ;
    }
    

    是一个查询结果集~

     @Override
        public boolean login(String name, String pwd) throws SQLException {
            boolean flag = false;
    
            DBconn.init();
            ResultSet rs = DBconn.selectSql("select * from user where name='"+name+"' and pwd='"+pwd+"'");
            while(rs.next()){
                if(rs.getString("name").equals(name) && rs.getString("pwd").equals(pwd)) {
                    flag = true;
                }
            }
            DBconn.closeConn();
            return flag;
    
        }
    

    在这里插入图片描述

    展开全文
  • ResultSet的遍历方法

    万次阅读 2018-07-19 20:25:14
    ResultSet遍历两种方法,第一,直接迭代,第二,用第三方工具类 第一:直接迭代: 1.DQL代码 不同于前面的DML过程的是,将原来的sql语句改成DQL,并且调用statement的executeQuery() 方法执行查询,返回结果使用...

    ResultSet遍历两种方法,第一,直接迭代,第二,用第三方工具类

    第一:直接迭代:

    1.DQL代码


    不同于前面的DML过程的是,将原来的sql语句改成DQL,并且调用statement的executeQuery() 方法执行查询,返回结果使用ResultSet 进行接收。

    String sql = "select * from student";
    ResultSet rs = stmt.executeQuery(sql);

    这个rs保存了查询返回的结果集,并没有读取出来呢,究竟怎么读呢?首先让我们了解一下ResultSet

    2.ResultSet 的功能

    这个ResultSet 究竟是个什么鬼呢?查看API文档之后,总结如下:

    2.1 ResultSet 对象具有指向其当前数据行的光标。 最初,光标被置于第一行之前。调用 next() 方法将光标移动到下一行;next()方法一开始是处于第一行之前,即beforeFirst,第一次使用next()就将指针指向返回结果集的第一行。每使用一次next(),指针就指向下一行。

           因为该方法在 ResultSet 对象没有下一行时返回 false, 所以可以在 while 循环中使用它来迭代结果集,调用getXXX(int fieldIndex)/getXXX(String columnName)方法获取字段值。

    2.2 ResultSet 接口提供用于从当前行获取列值的获取方法(getBoolean、getLong 等)。

    可以使用列的索引编号或列的名称获取值。一般情况下,使用列索引较为高效。列从 1开始编号。为了获得最大的可移植性,应该按从左到右的顺序读取每行中的结果集列, 每列只能读取一次。

    2.3 用作获取方法的输入的列名称不区分大小写

    3.写代码读取ResultSet

    3.1 读取方法1 – 通过索引来遍历读取

    while(rs.next()){
            int id = rs.getInt(1);
            String name = rs.getString(2);
            String gender = rs.getString(3);
            System.out.println("id:"+id+" 姓名:"+name+" 性别:"+gender);
        }

    3.2 读取方法2 – 通过字段名称来读取

    强调一下,这个传入的字段名称可以不区分大小写,因为在mysql中就是不区分的

    while(rs.next()){
            int id = rs.getInt("id");
            String name = rs.getString("name");
            String gender = rs.getString("gender");
            System.out.println("id:"+id+" 姓名:"+name+" 性别:"+gender);
        }

    第二:调用三方工具类

    直接使用BeanHandler<T> ,就可以简化大部分代码

    BeanHandler<Student> bh =new BeanHandler<Student>(Student.class);
    //rs是ResultSet得到的从返回集合 
    Student li = bh.handle(rs);

    BeanHandler<T>是返回一个实体对象,BeanListHandler<T>是返回一个list实体集合,MapHandler是返回不确定的单个实体对象,MapListHandler是返回不确定的list实体集合。

    展开全文
  • ResultSet随笔

    2020-09-08 20:19:11
    ResultSet在java.sql包下,用来表示数据库中的结果集,通过执行数据库的查询语句生成。例如: ResultSet rs = st.executeQuery(); ResultSet对象具有指向其当前数据行的光标,在最初指向第一行数据之前,用next()...

    ResultSet在java.sql包下,用来表示数据库中的结果集,通过执行数据库的查询语句生成。例如:

    ResultSet rs = st.executeQuery();
    

    ResultSet对象具有指向其当前数据行的光标,在最初指向第一行数据之前,用next()指向下一行,在下一行没有元素时返回为false,可以用来在数据库的登陆,判断结果集中是否有值:

    if(!rs.next()){
    	//结果集中没有值,数据库中不存在,登陆失败
    }
    

    值得注意的是:
    在javaAPI1.6文档中默认的ResultSet对象是不可以更新的,仅仅只有一个向前移动的光标,所以只能迭代一次,并且只能按照从第一行到最后一行的顺序进行。用作获取方法的输入的列名称不区分大小写。用列名称调用获取方法时,如果多个列具有这一名称,则返回第一个匹配列的值。在生成结果集的 SQL 查询中使用列名称时,将使用列名称选项。对于没有在查询中显式指定的列,最好使用列编号。如果使用列名称,则程序员应该注意保证名称唯一引用预期的列,这可以使用 SQL AS 子句确定。
    在进行模拟Tomcat服务器的项目中,在登陆判断的语句中用到 :

    rs.getString(String columnLable)//此方法用于获取此ResuiltSet对象的当前行中指定的值。
    

    留待补充…

    展开全文
  • ResultSet转List

    2016-03-10 10:36:40
    ResultSet转List
  • ResultSet用法集锦

    万次阅读 2019-06-01 17:31:07
    ResultSet用法集锦 添加链接描述 结果集(ResultSet)是数据中查询结果返回的一种对象,可以说结果集是一个存储查询结果的对象,但是结果集并不仅仅具有存储的功能,他同时还具有操纵数据的功能,可能完成对数据的...
  • 映射ResultSet结果

    2018-09-05 17:13:41
    映射 数据库ResultSet结果到javabean类,类似ORM中的映射,可以参考。
  • ResultSet对象

    2019-06-21 20:22:41
    一、ResultSet:结果集对象 1.使用步骤 1.游标向下移动一行 next方法 2 判断是否有数据:next方法返回 false ,已经到达最后一行,应停止查询; 3.获取数据 方法:getxxx():getInt() tip:需要关闭资源 while...
  • 什么是ResultSet?表示数据库结果集的数据表,通常通过执行查询数据库的语句生成。public interface ResultSetextends WrapperJava文档摘取:ResultSet对象具有指向其当前数据行的光标。最初,光标被置于第一行之前...
  • ResultSet Type

    2018-05-24 20:54:50
    原文:https://www.cnblogs.com/catkins/p/5604686.html说明:Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); 通用格式为:Statement stmt=con....
  • ResultSet遍历

    2019-05-10 14:38:55
    /** * 逐行获取数据库数据 * * @param rs * @return * @throws SQLException */ private List<... convertList(ResultSet rs) throws SQLException { List<Map<String, Object>> li...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 24,723
精华内容 9,889
热门标签
关键字:

resultset