com.xpn.xwiki.store
Class DBCPConnectionProvider
java.lang.Object
com.xpn.xwiki.store.DBCPConnectionProvider
- All Implemented Interfaces:
- org.hibernate.connection.ConnectionProvider
public class DBCPConnectionProvider
- extends java.lang.Object
- implements org.hibernate.connection.ConnectionProvider
A connection provider that uses an Apache commons DBCP connection pool.
To use this connection provider set:
hibernate.connection.provider_class org.hibernate.connection.DBCPConnectionProvider
Supported Hibernate properties:
hibernate.connection.driver_class
hibernate.connection.url
hibernate.connection.username
hibernate.connection.password
hibernate.connection.isolation
hibernate.connection.autocommit
hibernate.connection.pool_size
hibernate.connection (JDBC driver properties)
All DBCP properties are also supported by using the hibernate.dbcp prefix. A complete list can be found on the DBCP
configuration page: http://jakarta.apache.org/commons
/dbcp/configuration.html.
Example:
hibernate.connection.provider_class org.hibernate.connection.DBCPConnectionProvider
hibernate.connection.driver_class org.hsqldb.jdbcDriver
hibernate.connection.username sa
hibernate.connection.password
hibernate.connection.url jdbc:hsqldb:test
hibernate.connection.pool_size 20
hibernate.dbcp.initialSize 10
hibernate.dbcp.maxWait 3000
hibernate.dbcp.validationQuery select 1 from dual
More information about configuring/using DBCP can be found on the DBCP website. There you will also find the DBCP wiki, mailing
lists, issue tracking and other support facilities
- Author:
- Dirk Verbeeck
- See Also:
ConnectionProvider
|
Method Summary |
void |
close()
|
void |
closeConnection(java.sql.Connection conn)
|
void |
configure(java.util.Properties props)
|
java.sql.Connection |
getConnection()
|
protected void |
logStatistics()
|
boolean |
supportsAggressiveRelease()
Does this connection provider support aggressive release of JDBC connections and re-acquistion of those
connections (if need be) later? This is used in conjunction with
org.hibernate.cfg.Environment.RELEASE_CONNECTIONS to aggressively release JDBC connections. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DBCPConnectionProvider
public DBCPConnectionProvider()
configure
public void configure(java.util.Properties props)
throws org.hibernate.HibernateException
- Specified by:
configure in interface org.hibernate.connection.ConnectionProvider
- Throws:
org.hibernate.HibernateException
getConnection
public java.sql.Connection getConnection()
throws java.sql.SQLException
- Specified by:
getConnection in interface org.hibernate.connection.ConnectionProvider
- Throws:
java.sql.SQLException
closeConnection
public void closeConnection(java.sql.Connection conn)
throws java.sql.SQLException
- Specified by:
closeConnection in interface org.hibernate.connection.ConnectionProvider
- Throws:
java.sql.SQLException
close
public void close()
throws org.hibernate.HibernateException
- Specified by:
close in interface org.hibernate.connection.ConnectionProvider
- Throws:
org.hibernate.HibernateException
supportsAggressiveRelease
public boolean supportsAggressiveRelease()
- Does this connection provider support aggressive release of JDBC connections and re-acquistion of those
connections (if need be) later? This is used in conjunction with
org.hibernate.cfg.Environment.RELEASE_CONNECTIONS to aggressively release JDBC connections. However, the
configured ConnectionProvider must support re-acquisition of the same underlying connection for that semantic to
work. Typically, this is only true in managed environments where a container tracks connections by
transaction or thread.
- Specified by:
supportsAggressiveRelease in interface org.hibernate.connection.ConnectionProvider
logStatistics
protected void logStatistics()
Copyright © 2004-2008 XWiki. All Rights Reserved.