java里面 resultset能够作为函数的返回值吗?

如果resultset作为返回值的话,产生这个结果集的statement就不能够关闭,否则返回时,就会提示resultset已经关闭,但是不关闭statement,函数返回结果集以后,statement会被java自己回收关闭吗?最近一个项目有这个问题,产生了 "maximum open cursors exceeded" 游标超过最大数的错误了,也不知道程序有时报错是不是这个原因,求指导

  java里面的ResultSet是可以作为函数的返回值的,这个函数返回一个ResultSet对象,具体示例代码如下:

public class Demo {
    public static void main(String[] args) {
        
    }
    private ResultSet getNum(){//返回值为ResultSet的函数
        ResultSet rs = null;
        return rs;
    }
}

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

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-09-24
不建议这么做,可以把resultset的结果遍历后放在List里面,每一行就是一个Map
key是列名,value是数据库的值。
结果就是List<Map<String,Object>>
或者把结果封装个一个Bean里面也是很好的,List<Bean>本回答被提问者采纳
第2个回答  2014-07-15
一般是不会把resultset作为返回值的吧,想要的数据都是取出来再返回的吧

JAVA中Resultset() 方法返回的结果集是什么类型?
ResultSet result = stmt.executeQuery("SELECT * FROM message");while(result.next()) ...{ result.getString(1) ;result.getString(2) ;} 是一个查询结果集~

使用java,用resultset获取数据库中的结果
ResultSet 是一个迭代模式的动态连接容器。迭代模式的容器遍历的时候通常是这样的 while(rs.next()){ \/\/循环内容 } rs.next()返回值是一个boolean,表示在迭代过程中是否已经到结尾。直接从statement.excuteQuery()获得的rs默认数据游标在起始数据的前一个位置,调用一遍rs.next()才能指向可能有数据的...

Java干货 | javaresultset.getstring()方法:获取string类型的数据
Java中的ResultSet接口提供了一系列用于检索数据库中存储的数据的方法。其中,getString()方法用于获取ResultSet对象中当前行指定列的值,并将其作为String类型返回。1. 案例 本代码案例演示了如何使用getString()方法从ResultSet对象中获取String类型的数据。首先,使用DriverManager类获取连接对象,创建Statement...

java 如何获取ResultSet 中各项的数据类型
JAVA中Resultset是一个类 而不是一个方法。记住啊。结果集(ResultSet)是数据中查询结果返回的一种对象,可以说结果集是一个存储查询结果的对象,但是结果集并不仅仅具有存储的功能,他同时还具有操纵数据的功能,可能完成对数据的更新等。结果集读取数据的方法主要是getXXX(),它的参数可以是整型,表示第几列(是从1开...

java条件语句的判断符号和返回值问题
一”,相同,不再继续判断,直接返回真。或者这么说 如果是!=和return false,先判断两个“一“因为是”!=“所以条件不成立,不执行if中的语句,后面省略。如果是==和return true,先判断两个“一“因为是”==“所以条件成立,执行if中的语句,也就是return ture;函数结束,返回值真 愿采纳。

JAVA中ResultSet返回值的数据读取方法
是要把rs的记录 存储在数组中吗?使用一个while循环,把每一行记录获取的对象放到一个ArrayList集合中,然后使用ArrayList的toArray方法转成数组(也可以自己迭代实现)。数组和list转换不清楚的可以百度。

关于对ResultSet 中next() 方法的描述及用法是什么啊
ResultSet是您访问数据库返回的数据表,也就是结果集合,一开始是处于第一行之前,即beforeFirst,第一次使用next()就将指针指向返回结果集的第一行。每使用一次next(),指针就指向下一行,这时候你就可以使用rs.getObject()或者getInt()或者getString()之类的方法返回该行的某一个字段的值,也就是...

ResultSet 中的getString()方法的用法?
1、getString:String getString(int columnIndex),throws SQLException以Java编程语言中 String 的形式获取此 ResultSet 对象的当前行中指定列的值。2、1代表第一列。例如:columnIndex - 第一个列是1,第二个列是2,??返回:列值;如果值为SQL NULL,则返回值为null 抛出:SQLException ...

怎么使用JAVA连接数据库?
2、创建连接对象。3、创建sql语句执行对象 。4、执行sql语句。5、对执行结果进行处理。6、关闭相关的连接对象即可(顺序跟声明的顺序相反)。处理结果两种情况:1、执行更新返回的是本次操作影响到的记录数。2、执行查询返回的结果是一个ResultSet对象。ResultSet包含符合SQL语句中条件的所有行,并且它通过...

ResultSet 中的getString()方法的用法?
1、getString:String getString(int columnIndex),throws SQLException以Java编程语言中 String 的形式获取此 ResultSet 对象的当前行中指定列的值。2、1代表第一列。例如:columnIndex - 第一个列是1,第二个列是2,……返回:列值;如果值为SQL NULL,则返回值为null 抛出:SQLException ...

相似回答