Java连接池
我搜索了连接池并阅读了相关内容。如果我理解正确,连接池就像一组打开的连接。如果建立或创建了连接,则应将其添加到连接池中,如果该连接已关闭,则应在连接池中删除该连接;虽然它是开放的,我可以使用它一次又一次 在阅读这些关于连接池的教程和说明时,我有一些问题:Java连接池,java,database,jdbc,connection-pooling,Java,Database,Jdbc,Connection Pooling,我搜索了连接池并阅读了相关内容。如果我理解正确,连接池就像一组打开的连接。如果建立或创建了连接,则应将其添加到连接池中,如果该连接已关闭,则应在连接池中删除该连接;虽然它是开放的,我可以使用它一次又一次 在阅读这些关于连接池的教程和说明时,我有一些问题: 连接池只能在某台计算机上使用吗?像计算机一样 无法与ComputerB共享其连接池 connection.close()应该放在哪里 仅在选择/加载记录时使用连接是否正确?在我得到返回的记录/数据后,我在最后关闭了连接语句。与添加、编辑和删除记
connection.close()
应该放在哪里最后关闭了连接语句。与添加、编辑和删除记录相同。在处理过程中,我放置了一个进度条,用户将不得不等待它完成并再次执行一些处理,这意味着我一次只能打开一个连接
谢谢你的解释。:) 注意:我想我们讨论的是界面
连接池只能在某台计算机上使用吗?像ComputerA不能与ComputerB共享其连接池
正在运行的应用程序和数据库之间存在连接。当然,两台不同的机器不能共享同一个正在运行的应用程序,因此它们不能共享与数据库的连接
connection.close()
应该放在哪里
您应该始终确保在使用连接
实例后(通常在finally
块中)调用close()
。如果正在使用池,这实际上会在幕后返回到池的连接。参考:
仅在选择/加载记录时使用连接是否正确?在我得到返回的记录/数据后,我在最后关闭了连接语句
是的,没错。您不想手动挂起一个连接
引用-使用它来执行SQL/DML,然后通过调用finally
块中的close()
将其签回池中,就像您正在做的那样。All true,如果您使用的是Java 7,则可以使用new,而不是将close()放在finally块中。退房