Java连接池
我搜索了连接池并阅读了它。 如果我理解正确,连接池就像一组打开的连接。 如果建立或创建了连接,则应将其添加到连接池中,如果该连接已关闭,则应在连接池中将其删除; 虽然它是开放的我可以一次又一次地使用它。
在阅读这些有关连接池的教程和解释时,我有一些问题:
-
是否只能在某台计算机上使用连接池? 像ComputerA无法与ComputerB共享其连接池?
-
应该在哪里放置
connection.close()
?
仅在选择/加载记录时使用连接是否正确? 获得返回的记录/数据后,我在finally
语句中关闭连接。 与添加,编辑和删除记录相同。 在处理过程中,我放置了一个进度条,因此用户必须等待它完成并再次进行一些处理,这意味着我一次只能打开一个连接。
感谢您的解释。 🙂
注意:我假设我们正在谈论java.sql.Connection
接口。
是否只能在某台计算机上使用连接池? 像ComputerA无法与ComputerB共享其连接池?
正在运行的应用程序和数据库之间存在连接。 当然,两台不同的机器不能共享同一个正在运行的应用程序,因此它们无法与数据库共享连接。
应该在哪里放置
connection.close()
?
在使用它之后,应始终确保在Connection
实例上调用close()
(通常在finally
块中)。 如果正在使用池,这实际上将在后台返回到池的连接。 参考: 关闭池中的JDBC连接
仅在选择/加载记录时使用连接是否正确? 获得返回的记录/数据后,我在
finally
语句中关闭连接。
对,那是正确的。 您不希望手动挂起到Connection
引用 – 使用它来执行SQL / DML,然后通过调用finally
块中的close()
将其检入池中,就像您正在做的那样。