public class JDBCDataSource extends JDBCCommonDataSource implements DataSource, Serializable, Referenceable, Wrapper
A factory for connections to the physical data source that this
DataSource object represents. An alternative to the
DriverManager facility, a
is the preferred means of getting a connection. An object that implements
DataSource interface will typically be
registered with a naming service based on the
Java™ Naming and Directory (JNDI) API.
DataSource interface is implemented by a driver vendor.
There are three types of implementations:
Connectionobject that will automatically participate in connection pooling. This implementation works with a middle-tier connection pooling manager.
Connectionobject that may be used for distributed transactions and almost always participates in connection pooling. This implementation works with a middle-tier transaction manager and almost always with a connection pooling manager.
DataSource object has properties that can be modified
when necessary. For example, if the data source is moved to a different
server, the property for the server can be changed. The benefit is that
because the data source's properties can be changed, any code accessing
that data source does not need to be changed.
A driver that is accessed via a
DataSource object does not
register itself with the
DriverManager. Rather, a
DataSource object is retrieved though a lookup operation
and then used to create a
Connection object. With a basic
implementation, the connection obtained through a
object is identical to a connection obtained through the
This implementation of data source is a basic implementation and does not perform connection pooling.
The getter and setter methods of the parent class,
can be used.
|Constructor and Description|
|Modifier and Type||Method and Description|
Retrieves a new connection using the properties that have already been set.
Retrieves a new connection using the given username and password, and the database url that has been set.
Retrieves the Reference of this object.
Returns true if this either implements the interface argument or is directly or indirectly a wrapper for an object that does.
Returns an object that implements the given interface to allow access to non-standard methods, or standard methods not exposed by the proxy.
getDatabase, getDatabaseName, getDataSourceName, getDescription, getLoginTimeout, getLogWriter, getNetworkProtocol, getParentLogger, getServerName, getUrl, getURL, getUser, setDatabase, setDatabaseName, setLoginTimeout, setLogWriter, setPassword, setProperties, setUrl, setURL, setUser
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
public Connection getConnection() throws SQLException
public Connection getConnection(String username, String password) throws SQLException
public <T> T unwrap(Class<T> iface) throws SQLException
unwraprecursively on the wrapped object or a proxy for that result. If the receiver is not a wrapper and does not implement the interface, then an
iface- A Class defining an interface that the result must implement.
SQLException- If no object found that implements the interface
public boolean isWrapperFor(Class<?> iface) throws SQLException
isWrapperForon the wrapped object. If this does not implement the interface and is not a wrapper, return false. This method should be implemented as a low-cost operation compared to
unwrapso that callers can use this method to avoid expensive
unwrapcalls that may fail. If this method returns true then calling
unwrapwith the same argument should succeed.
iface- a Class defining an interface.
SQLException- if an error occurs while determining whether this is a wrapper for an object with the given interface.
public Reference getReference() throws NamingException
Copyright © 2001 - 2017 HSQL Development Group.