ins*_*ity 11 postgresql connection-pooling jdbc
最近我从这里下载了PostgreSQL的JDBC驱动程序.因为我使用的是Java 1.7 JVM,所以我写了:
如果您使用的是1.6或1.7 JVM,那么您应该使用JDBC4版本.
我下载了JDBC4.问题是PoolingDataSource's它中没有.如果你JDBC3你可以使用org.postgresql.jdbc3.Jdbc3PoolingDataSource或他人如看到这里.
DataSourceJDBC4中是否有任何我不知道的池,或者我应该使用什么?我在JDBC4中找到的唯一的东西是PGPoolingDataSource但我不确定我是否应该使用它,因为它基于他们的Java文档消息:
如果您的服务器/中间件供应商提供与PostgreSQL ConnectionPoolDataSource实现接口的连接池实现,请不要使用此方法!
kro*_*lko 15
使用org.postgresql.ds.PGPoolingDataSource
这是一个例子:http
:
//jdbc.postgresql.org/documentation/head/ds-ds.html我已经使用JDBC4驱动程序检查了这个例子,它运行正常.
但是在这个链接的文档中,由于它的局限性,他们不鼓励使用postgreSQL池数据源:
此处提供的池化数据源实现并不是世界上功能最丰富的.除其他外,在游泳池本身关闭之前,连接永远不会关闭; 没有办法缩小游泳池.同样,不为默认配置用户以外的用户请求的连接也不会合并.它的错误处理有时无法从池中删除断开的连接.通常,不建议使用PostgreSQL提供的连接池.检查您的应用程序服务器或查看优秀的jakarta commons DBCP项目.
他们建议使用DBCP连接池:http://commons.apache.org/proper/commons-dbcp/
检查它,它好多了 - 只需下载库文件,将它们放在一个分类中并导入到项目中,文档来自上面的链接包含如何在代码中使用它的示例.
大多数(所有?)应用程序服务器实现自己的连接池,如果您使用的是应用程序服务器,那么它是最佳选择.
例如,Tomcat 7拥有自己的连接池实现,它甚至比DBCP更好,请查看文档:http://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html
| 归档时间: |
|
| 查看次数: |
19125 次 |
| 最近记录: |