使用连接池

Microsoft SQL Server 2005 JDBC Driver 提供对 J2EE 连接池的支持。JDBC 驱动程序实现了 JDBC 3.0 所需的接口,从而该驱动程序可参与任何中间件供应商提供的与 JDBC 3.0 兼容的连接池实现。中间件(例如 J2EE 应用程序服务器)通常提供兼容的连接池工具。JDBC 驱动程序将参与这些环境中的已池化的连接。

备注

尽管 JDBC 驱动程序支持 J2EE 连接池,但其自身并不提供池实现。驱动程序依赖于第三方 Java 应用程序服务器来管理连接。

用于连接池实现的类如下。

实现 说明

com.microsoft.sqlserver.jdbc.SQLServerXADataSource

javax.sql.ConnectionPoolDataSource 和 javax.sql.XADataSource

建议您对所有 J2EE 服务器需求都使用 SQLServerXADataSource 类,因为它实现了所有的 JDBC 3.0 池和 XA 接口。

com.microsoft.sqlserver.jdbc.SQLServerConnectionPoolDataSource

javax.sql.ConnectionPoolDataSource

该类是一个连接工厂,它使得 J2EE 应用程序服务器可使用物理连接来填充它的连接池。如果 J2EE 供应商的配置需要实现 javax.sql.ConnectionPoolDataSource 的类,则将类名称指定为 SQLServerConnectionPoolDataSource。通常,建议改用 SQLServerXADataSource 类,因为它同时实现了池和 XA 接口,并且已在很多 J2EE 服务器配置中进行了验证。

JDBC 应用程序代码应始终显式地关闭连接,以便从池中获得最大利益。如果应用程序显式地关闭连接,则池实现可立即重新使用此连接。如果连接未关闭,则其他应用程序无法重新使用它。应用程序可使用finally构造来确保关闭已池化的连接,即使发生异常。

备注

JDBC 驱动程序在将连接返回池中时,不会立即调用 sp_reset_connection 存储过程。但是,驱动程序将依靠第三方 Java 应用程序服务器使连接返回其原始状态。

另请参见

其他资源

通过 JDBC 驱动程序连接到 SQL Server