DruidConnectionHolder 是单例吗?深度解析 Druid 数据库连接管理
DruidConnectionHolder 是一个用于管理数据库连接的对象,它不是单例。
在 Druid 数据库连接池中,每个数据库连接都会由一个 DruidPooledConnection 对象来表示。DruidConnectionHolder 是 DruidPooledConnection 的内部类,用于封装和管理这些连接。
DruidConnectionHolder 是以非静态内部类的形式存在于 DruidPooledConnection 中,它持有一个连接对象(Connection)和连接的状态信息。每个 DruidPooledConnection 对象都会创建一个对应的 DruidConnectionHolder 对象。
因为 DruidPooledConnection 对象是数据库连接池中的一个连接,数据库连接池可以创建多个 DruidPooledConnection 对象来管理多个连接。所以 DruidConnectionHolder 是在每个 DruidPooledConnection 对象的上下文中存在的,每个连接都有自己的 DruidConnectionHolder。
因此,DruidConnectionHolder 不是单例,它的生命周期与每个 DruidPooledConnection 对象的生命周期一致。在使用 Druid 进行数据库连接管理时,会创建多个 DruidConnectionHolder 对象来管理多个数据库连接。
原文地址: https://www.cveoy.top/t/topic/jme 著作权归作者所有。请勿转载和采集!