我搜索连接池并阅读了它。如果我正确理解它,连接池就像打开的连接的集合。如果建立或创建了连接,则应将其添加到连接池中,如果该连接已关闭,则应在连接池中删除该连接;当连接打开时,我可以一次又一次地使用它。
在阅读这些关于连接池的教程和解释时,我有一些问题:
connection.close()应该放在哪里?仅在选择/加载记录时使用连接正确吗?在获得返回的记录/数据后,在finally语句处关闭连接。与添加、编辑和删除记录相同。在处理过程中,我放置了一个进度条,因此用户将不得不等待它完成并再次进行一些处理,这意味着我每次只打开一个连接。
谢谢你的解释。:)
发布于 2013-04-16 04:53:01
注意:我想我们讨论的是java.sql.Connection接口。
连接池是否只能在某台计算机上使用?像ComputerA一样,它不能与ComputerB共享它的连接池?
正在运行的应用程序和数据库之间存在连接。当然,两台不同的机器不能共享同一个正在运行的应用程序,因此它们不能与数据库共享连接。
connection.close()应该放在哪里?
您应该始终确保在使用Connection实例后(通常在finally块中)调用它。如果正在使用池,这实际上将返回到后台池的连接。参考资料:Closing JDBC Connections in Pool
仅在选择/加载记录时使用连接正确吗?在获得返回的记录/数据后,在
finally语句处关闭连接。
是的,没错。您不希望手动保存一个Connection引用--使用它执行SQL/DML,然后通过调用finally块中的close()将其签回池中,就像您正在做的那样。
https://stackoverflow.com/questions/16028947
复制相似问题