是不是我从连接池获取Connection,使用完的时候,最后只需要关闭ResultSet和Statement
Connection不用关
15 个解决方案
#1
另求Connection,ResultSet和Statement
的关闭顺序,多谢指教
的关闭顺序,多谢指教
#2
使用连接池时,初始化和关闭都按照普通连接一样操作,连接池内部通常是覆盖原有的close方法
#3
关闭的时候我一般按照这样的顺序
ResultSet
Statement
Connection
ResultSet
Statement
Connection
#4
c3p0连接池呢,最后要connection.close么
#5
"实际上web上的连接池就是一个Applicatio级别的vector,因为vector是同步的所以在server开始实例是一次性的实例很多个connection的连接在vector里,然后每当调用一个connection实例时便游历一边vector,找到没有被使用的vector的话,便将这个传递给程序,当vector内的connection可用数量小于标准可用connection是便会自动实例connection再加入vector内"
按理说咱close的时候,应该不会关掉连接池里的connection,出错信息说我得到了一个closed的connection,而且对其操作
按理说咱close的时候,应该不会关掉连接池里的connection,出错信息说我得到了一个closed的connection,而且对其操作
#6
或者咱最后应该写 connection=null?不解
#7
写那个=null不是必要的,不妨操作结束的时候close一下
#8
c3p0不用处理connect,你可以跟踪下代码,执行完后,connect对象已经为null了,
#9
You can't operate on a closed Connection
那这句是因为我手动close引起的么
那这句是因为我手动close引起的么
#10
受教了
#11
不用关闭 连接池连接会放到池用 供下次在用啊
#12
那用连接池,是不是就不用try catch finally close了
把finally close那段去掉么
把finally close那段去掉么
#13
另外问下,用连接池,rs和ps要close,但是connection不要close,是这样么
#14
我同意二楼的观点
作为连接池包的使用者应该向正常编写代码一样按顺序关闭resultset,statement,connection,如果不这样一旦你不使用连接池或者更换连接池怎么办,调用连接池的connection.close()方法时他不会关闭数据库接连,只是把相应的connection放回到池子中,出现这种情况会不会是网络问题,或者有人在数据库那边删除这次连接了
作为连接池包的使用者应该向正常编写代码一样按顺序关闭resultset,statement,connection,如果不这样一旦你不使用连接池或者更换连接池怎么办,调用连接池的connection.close()方法时他不会关闭数据库接连,只是把相应的connection放回到池子中,出现这种情况会不会是网络问题,或者有人在数据库那边删除这次连接了
#15
我是本机测试的,connection.close就会出这个错
删掉connection.close就不会
在数据库那边show processlist发现c3p0正常工作的,一开始有初始化配置的connection
删掉connection.close就不会
在数据库那边show processlist发现c3p0正常工作的,一开始有初始化配置的connection
#1
另求Connection,ResultSet和Statement
的关闭顺序,多谢指教
的关闭顺序,多谢指教
#2
使用连接池时,初始化和关闭都按照普通连接一样操作,连接池内部通常是覆盖原有的close方法
#3
关闭的时候我一般按照这样的顺序
ResultSet
Statement
Connection
ResultSet
Statement
Connection
#4
c3p0连接池呢,最后要connection.close么
#5
"实际上web上的连接池就是一个Applicatio级别的vector,因为vector是同步的所以在server开始实例是一次性的实例很多个connection的连接在vector里,然后每当调用一个connection实例时便游历一边vector,找到没有被使用的vector的话,便将这个传递给程序,当vector内的connection可用数量小于标准可用connection是便会自动实例connection再加入vector内"
按理说咱close的时候,应该不会关掉连接池里的connection,出错信息说我得到了一个closed的connection,而且对其操作
按理说咱close的时候,应该不会关掉连接池里的connection,出错信息说我得到了一个closed的connection,而且对其操作
#6
或者咱最后应该写 connection=null?不解
#7
写那个=null不是必要的,不妨操作结束的时候close一下
#8
c3p0不用处理connect,你可以跟踪下代码,执行完后,connect对象已经为null了,
#9
You can't operate on a closed Connection
那这句是因为我手动close引起的么
那这句是因为我手动close引起的么
#10
受教了
#11
不用关闭 连接池连接会放到池用 供下次在用啊
#12
那用连接池,是不是就不用try catch finally close了
把finally close那段去掉么
把finally close那段去掉么
#13
另外问下,用连接池,rs和ps要close,但是connection不要close,是这样么
#14
我同意二楼的观点
作为连接池包的使用者应该向正常编写代码一样按顺序关闭resultset,statement,connection,如果不这样一旦你不使用连接池或者更换连接池怎么办,调用连接池的connection.close()方法时他不会关闭数据库接连,只是把相应的connection放回到池子中,出现这种情况会不会是网络问题,或者有人在数据库那边删除这次连接了
作为连接池包的使用者应该向正常编写代码一样按顺序关闭resultset,statement,connection,如果不这样一旦你不使用连接池或者更换连接池怎么办,调用连接池的connection.close()方法时他不会关闭数据库接连,只是把相应的connection放回到池子中,出现这种情况会不会是网络问题,或者有人在数据库那边删除这次连接了
#15
我是本机测试的,connection.close就会出这个错
删掉connection.close就不会
在数据库那边show processlist发现c3p0正常工作的,一开始有初始化配置的connection
删掉connection.close就不会
在数据库那边show processlist发现c3p0正常工作的,一开始有初始化配置的connection