Java getConnection是否总是打开新连接?

Java getConnection是否总是打开新连接?,java,spring,jdbc,datasource,Java,Spring,Jdbc,Datasource,我在一个Java文件中发现了这个方法,我想知道这里发生了什么?这真的有效吗?我认为这个方法什么都不做,因为getConnection()方法创建了一个新的连接,然后它就关闭了。我说得对吗 public void closeAllConnections() { for(String db : this.dbList) try { DataSource ds = (DataSource) this.application

我在一个Java文件中发现了这个方法,我想知道这里发生了什么?这真的有效吗?我认为这个方法什么都不做,因为getConnection()方法创建了一个新的连接,然后它就关闭了。我说得对吗

public void closeAllConnections()
    {
        for(String db : this.dbList)
            try {
                DataSource ds = (DataSource) this.applicationContext.getBean(db+"DataSource"); 
                ds.getConnection().close();
            } catch (Exception e) {
                //...
            }
    }

这取决于数据源的定义方式

如果使用连接池,则可以重用现有连接

例如,请参见解释

JDBC2.0扩展API中的连接池是 缓存数据库连接。这允许重用物理资源 连接和减少应用程序的开销