org.huihoo.jfox.datasource
Class PoolDataSource
org.huihoo.jfox.datasource.PoolDataSource
- All Implemented Interfaces:
- Component, ComponentSupportMBean, Loggable, javax.naming.spi.ObjectFactory, Persistentable, PoolDataSourceMBean, javax.naming.Referenceable, java.io.Serializable
- public class PoolDataSource
- implements javax.naming.Referenceable, javax.naming.spi.ObjectFactory, PoolDataSourceMBean
- Author:
- Kelvin Wu
- See Also:
- Serialized Form
|
Constructor Summary |
PoolDataSource()
Default constructor used by JNDI to get a new Instance without any parameters. |
PoolDataSource(java.lang.String dbDriver,
java.lang.String dbURL,
java.lang.String user,
java.lang.String password)
Constructor specify database connection parameters to generate a valid and usable datasource. |
|
Method Summary |
protected void |
doDestroy()
|
protected void |
doInit()
|
java.sql.Connection |
getConnection()
Get usable connection from datasource |
java.sql.Connection |
getConnection(java.lang.String username,
java.lang.String password)
Get connection by specific user name and password, the connection is not pooled by
Connection Pool |
java.lang.String |
getDbDriver()
|
java.lang.String |
getDbURL()
|
int |
getLoginTimeout()
|
java.io.PrintWriter |
getLogWriter()
Get logger writer |
java.lang.Object |
getObjectInstance(java.lang.Object obj,
javax.naming.Name name,
javax.naming.Context nameCtx,
java.util.Hashtable environment)
Method that inherited from ObjectFactory. |
java.lang.String |
getPassword()
|
javax.naming.Reference |
getReference()
Method that inherited from Referenceable. |
java.lang.String |
getUser()
|
void |
setDbDriver(java.lang.String dbDriver)
|
void |
setDbURL(java.lang.String dbURL)
|
void |
setLoginTimeout(int seconds)
|
void |
setLogWriter(java.io.PrintWriter out)
|
void |
setPassword(java.lang.String password)
|
void |
setUser(java.lang.String user)
|
pool
protected SimpleConnectionPool pool
PoolDataSource
public PoolDataSource()
- Default constructor used by JNDI to get a new Instance without any parameters.
PoolDataSource
public PoolDataSource(java.lang.String dbDriver,
java.lang.String dbURL,
java.lang.String user,
java.lang.String password)
throws java.lang.Exception
- Constructor specify database connection parameters to generate a valid and usable datasource.
- Parameters:
dbDriver - database class name according your dabasedbURL - database url used to access databaseuser - valid database userpassword - // corresponding database password- Throws:
java.lang.Exception - any exception who cares?
getConnection
public java.sql.Connection getConnection()
throws java.sql.SQLException
- Get usable connection from datasource
- Returns:
- Connection the valid database connection can used by user
- Throws:
java.sql.SQLException -
getConnection
public java.sql.Connection getConnection(java.lang.String username,
java.lang.String password)
throws java.sql.SQLException
- Get connection by specific user name and password, the connection is not pooled by
Connection Pool
- Parameters:
username - password - - Returns:
-
- Throws:
java.sql.SQLException -
getLogWriter
public java.io.PrintWriter getLogWriter()
throws java.sql.SQLException
- Get logger writer
- Returns:
-
- Throws:
java.sql.SQLException -
setLogWriter
public void setLogWriter(java.io.PrintWriter out)
throws java.sql.SQLException
- Parameters:
out - - Throws:
java.sql.SQLException -
setLoginTimeout
public void setLoginTimeout(int seconds)
throws java.sql.SQLException
- Parameters:
seconds - - Throws:
java.sql.SQLException -
getLoginTimeout
public int getLoginTimeout()
throws java.sql.SQLException
- Returns:
-
- Throws:
java.sql.SQLException -
getReference
public javax.naming.Reference getReference()
throws javax.naming.NamingException
- Method that inherited from Referenceable.
- Specified by:
getReference in interface javax.naming.Referenceable
- Returns:
-
- Throws:
javax.naming.NamingException -
getObjectInstance
public java.lang.Object getObjectInstance(java.lang.Object obj,
javax.naming.Name name,
javax.naming.Context nameCtx,
java.util.Hashtable environment)
throws java.lang.Exception
- Method that inherited from ObjectFactory.
- Specified by:
getObjectInstance in interface javax.naming.spi.ObjectFactory
- Parameters:
obj - name - nameCtx - environment - - Returns:
-
- Throws:
java.lang.Exception -
getDbDriver
public java.lang.String getDbDriver()
- Specified by:
getDbDriver in interface PoolDataSourceMBean
setDbDriver
public void setDbDriver(java.lang.String dbDriver)
- Specified by:
setDbDriver in interface PoolDataSourceMBean
getDbURL
public java.lang.String getDbURL()
- Specified by:
getDbURL in interface PoolDataSourceMBean
setDbURL
public void setDbURL(java.lang.String dbURL)
- Specified by:
setDbURL in interface PoolDataSourceMBean
getUser
public java.lang.String getUser()
- Specified by:
getUser in interface PoolDataSourceMBean
setUser
public void setUser(java.lang.String user)
- Specified by:
setUser in interface PoolDataSourceMBean
getPassword
public java.lang.String getPassword()
- Specified by:
getPassword in interface PoolDataSourceMBean
setPassword
public void setPassword(java.lang.String password)
- Specified by:
setPassword in interface PoolDataSourceMBean
doInit
protected void doInit()
throws java.lang.Exception
doDestroy
protected void doDestroy()
throws java.lang.Exception