JDBC中如何建立连接池?

2023-12-15

任何人都可以提供有关如何建立 JDBC 连接池的示例或链接吗?

通过搜索谷歌,我看到了许多不同的方法来做到这一点,这相当令人困惑。

最终我需要代码来返回java.sql.Connection对象,但我在开始时遇到困难......欢迎任何建议。

Update:没有javax.sql or java.sql有池连接实现吗?为什么不最好使用这些呢?


如果您需要独立的连接池,我的偏好是C3P0 over DBCP(我在这篇文章中提到过之前的回答),我只是在重负载下使用 DBCP 时遇到了太多问题。使用 C3P0 非常简单。来自文档:

ComboPooledDataSource cpds = new ComboPooledDataSource();
cpds.setDriverClass( "org.postgresql.Driver" ); //loads the jdbc driver
cpds.setJdbcUrl( "jdbc:postgresql://localhost/testdb" );
cpds.setUser("swaldman");
cpds.setPassword("test-password");

// the settings below are optional -- c3p0 can work with defaults
cpds.setMinPoolSize(5);
cpds.setAcquireIncrement(5);
cpds.setMaxPoolSize(20);

// The DataSource cpds is now a fully configured and usable pooled DataSource 

但如果您在应用程序服务器内运行,我建议使用它提供的内置连接池。在这种情况下,您需要配置它(请参阅应用程序服务器的文档)并通过 JNDI 检索数据源:

DataSource ds = (DataSource) new InitialContext().lookup("jdbc/myDS");
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JDBC中如何建立连接池? 的相关文章

随机推荐