Class BasicDataSourceFactory

java.lang.Object
org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory
All Implemented Interfaces:
ObjectFactory

public class BasicDataSourceFactory extends Object implements ObjectFactory
JNDI object factory that creates an instance of BasicDataSource that has been configured based on the RefAddr values of the specified Reference, which must match the names and data types of the BasicDataSource bean properties with the following exceptions:
  • connectionInitSqls must be passed to this factory as a single String using semicolon to delimit the statements whereas BasicDataSource requires a collection of Strings.
Since:
2.0
  • Constructor Details

    • BasicDataSourceFactory

      public BasicDataSourceFactory()
  • Method Details

    • createDataSource

      public static BasicDataSource createDataSource(Properties properties) throws SQLException
      Creates and configures a BasicDataSource instance based on the given properties.
      Parameters:
      properties - The data source configuration properties.
      Returns:
      A new a BasicDataSource instance based on the given properties.
      Throws:
      SQLException - Thrown when an error occurs creating the data source.
    • getObjectInstance

      public Object getObjectInstance(Object obj, Name name, Context nameCtx, Hashtable<?,?> environment) throws SQLException
      Creates and return a new BasicDataSource instance. If no instance can be created, return null instead.
      Specified by:
      getObjectInstance in interface ObjectFactory
      Parameters:
      obj - The possibly null object containing location or reference information that can be used in creating an object
      name - The name of this object relative to nameCtx
      nameCtx - The context relative to which the name parameter is specified, or null if name is relative to the default initial context
      environment - The possibly null environment that is used in creating this object
      Throws:
      SQLException - if an exception occurs creating the instance