建议不要把ResultSet作为参数直接传递

这样会问题多多,而且它一直要占用一个连接
得到ResultSet对象后,马上把它放到一个ArrayList []里面,执行完这个方法后不但可以关闭rs,而且可以关闭Connection了,把资源释放了,然后把数组作为参数传递就可以了,它与SQL无关了

        rs = st.executeQuery(sql);
        if (rs!=null) {
            rs.last();
            int rows = rs.getRow();
            if (rows == 0) return null;
            rs.beforeFirst();
            array = new java.util.ArrayList[rows];
            int l = 0;
            while (rs.next()) {
                array[l] = new ArrayList();
                array[l].add(0,rs.getString(1));
                array[l].add(1,new Double(rs.getDouble(2)));
                array[l].add(2,new Double(rs.getDouble(3)));
                array[l].add(3,rs.getString(4));
                l++;
            }
        }  

时间: 2025-01-21 14:14:06

建议不要把ResultSet作为参数直接传递的相关文章

汇编中参数的传递和堆栈修正

在 Win32汇编中,我们经常要和 Api 打交道,另外也会常常使用自己编制的类似于 Api 的带参数的子程序,本文要讲述的是在子程序调用的过程中进行参数传递的概念和分析.一般在程序中,参数的传递是通过堆栈进行的,也就是说,调用者把要传递给子程序(或者被调用者)的参数压入堆栈,子程序在堆栈取出相应的值再使用,比如说,如果你要调用 SubRouting(Var1,Var2,Var3),编译后的最终代码可能是 push Var3push Var2push Var1call SubRoutingadd

java 参数的传递 更新数据

问题描述 java 参数的传递 更新数据 有一个程序,数据的更新需要传递参数,但是再当前页面无法传递参数,我要怎么实现参数的传递 解决方案 不知道你说的当前页面无法传递参数是什么意思,传不过去参数,会不会因为form没有设置method="POST"或者是GET,又或者你使用了ajax没有配置正确. java中前台有request,application,session,cookie等四大页面对象,有时也会通过隐藏的input标签(hidden属性)存储值 解决方案二: 不能传递参数,

参数问题-如何去理参数,参数的传递问题

问题描述 如何去理参数,参数的传递问题 如题,希望大神们指点.近期在学系统编程.见到各种参数各种传递.好晕,希望好心人能给我指点下,该如何去理解.点拨一下我.谢谢 解决方案 参数我个人感觉嘛,就是在各种函数之间调用,每个函数的入口,就是参数的门,那你就得要钥匙进入吧(这类似于指针),这所谓的钥匙就是传入参数的的地址等,进入这门后就可以用它啦... 解决方案二: 参数一般都是从外面传递到方法里.通过传参数来进行方法中事件的执行,比如通过id值来进行数据库表的删除,那么就需要把id的值传递到删除的这

汇编中参数的传递和堆栈修正【转载】

 在Win32汇编中,我们经常要和Api 打交道,另外也会常常使用自己编制的类似于Api 的带参数的子程序,本文要讲述的是在子程序调用的过程中进行参数传递的概念和分析.一般在程序中,参数的传递是通过堆栈进行的,也就是说,调用者把要传递 给子程序(或者被调用者)的参数压入堆栈,子程序在堆栈取出相应的值再使用,比如说,如果你要调用 SubRouting(Var1,Var2,Var3),编译后的最终代码可能是    push Var3    push Var2    push Var1    call

vb参数传递-VB高手请进!在线等。。——shell使用dos命令时参数的传递

问题描述 VB高手请进!在线等..--shell使用dos命令时参数的传递 怎样才能将%LOGPATH%所替代的内容传递到其中? (不要写成调用bat的形式) 解决方案 不行的,%logpath%不能包在括号里,应该这样 Shell "cmd /k mkdir "+LOGPATH+" > nul 2>&1", vbNormalNoFocus vb调用dos是直接运行引号内的,而不给某一变量赋值.另外包在百分号内的是bat变量而不是vb的变量 解决

c-请问这里参数的传递顺序是怎样的?

问题描述 请问这里参数的传递顺序是怎样的? <?php function sortByLen( $one, $two ) { if ( strlen( $one ) == strlen( $two ) ) return 0; else return ( strlen( $one ) > strlen( $two ) ) ? 1 : -1; } $lamp = array( "Linux", "Apache", "MySQL", &qu

python 函数参数的传递(参数带星号的说明)

原创地址:http://www.cnblogs.com/smiler/archive/2010/08/02/1790132.html python中函数参数的传递是通过赋值来传递的. 函数参数的使用又有俩个方面值得注意: 1.函数参数是如何定义的  2.在调用函数的过程中参数是如何被解析 先看第一个问题,在python中函数参数的定义主要有四种方式:1.F(arg1,arg2,...)这 是最常见的定义方式,一个函数可以定义任意个参数,每个参数间用逗号分割,用这种方式定义的函数在调用的的时候也必

参数*p传递,对p进行++会影响源程序吗

问题描述 参数*p传递,对p进行++会影响源程序吗 #include ""stdafx.h""#include void fun(char *p){ //printf(""%c""p); while(*p!='E') { printf(""%cn""p); p++; } }int main(int argc char* argv[]){ char p[5]={'A''B''C''D''E

vb.net 函数或子程序的可选参数如何 传递color?

问题描述 问题,vb.net函数或子程序的可选参数如何传递color?SubchangebBackcolor(OptionalbackcolorAsColor=Color.Black)......EndSub 我这样写报错,高手能给指正一下吗? 解决方案 解决方案二:用重载吧,可选参数必须是常量解决方案三:回复shingoscar:我该如何使用重载呢?(我是新手)能贴下代码吗解决方案四:重载,就是几个函数的名称相同而参数不同.解决方案五:回复zj_zwl:谢谢,我再研究研究.解决方案六:或者把颜