java - getConnection 是否总是打开一个新连接?

标签 java spring jdbc datasource

我在 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) {
                //...
            }
    }

最佳答案

这取决于您的数据源是如何定义的。

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

例如参见oracle解释

Connection pooling in the JDBC 2.0 extension API is a framework for caching database connections. This allows reuse of physical connections and reduced overhead for your application.

关于java - getConnection 是否总是打开一个新连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44950162/

相关文章:

java - 如何修复仅生成空白文件的文件输出 PrintStream

java - 在 Spring 中解析 Multipart/mixed

java - 关于在 Java 中使用 JDBC 连接到 IBM 数据库

java - 如何在 Java 中为具有组合键的表编写删除 SQL 语句?

java - 如何在Spring Boot中连接两个不同的MySQL数据库

java - HttpServletRequest getParameter 无法使用 & 检索参数

java - 忽略 Java Arraylist 中的负值进行计算

java - Spring MVC 中的 jackson

spring - Grails 检查特定 Controller 操作的角色访问权限

postgresql - 关于 JDBC 请求和变量的 Jmeter 问题