public class JdbcDataSource extends TraceObject implements javax.sql.XADataSource, javax.sql.DataSource, javax.sql.ConnectionPoolDataSource, java.io.Serializable, javax.naming.Referenceable, JdbcDataSourceBackwardsCompat
import org.h2.jdbcx.JdbcDataSource;
import javax.naming.Context;
import javax.naming.InitialContext;
JdbcDataSource ds = new JdbcDataSource();
ds.setURL("jdbc:h2:˜/test");
ds.setUser("sa");
ds.setPassword("sa");
Context ctx = new InitialContext();
ctx.bind("jdbc/dsName", ds);
To use a data source that is already registered, use the following code:
import java.sql.Connection;
import javax.sql.DataSource;
import javax.naming.Context;
import javax.naming.InitialContext;
Context ctx = new InitialContext();
DataSource ds = (DataSource) ctx.lookup("jdbc/dsName");
Connection conn = ds.getConnection();
In this example the user name and password are serialized as
well; this may be a security problem in some cases.ARRAY, BLOB, CALLABLE_STATEMENT, CLOB, CONNECTION, DATA_SOURCE, DATABASE_META_DATA, PARAMETER_META_DATA, PREPARED_STATEMENT, RESULT_SET, RESULT_SET_META_DATA, SAVEPOINT, STATEMENT, trace, XA_DATA_SOURCE, XID| Constructor and Description |
|---|
JdbcDataSource()
The public constructor.
|
| Modifier and Type | Method and Description |
|---|---|
java.sql.Connection |
getConnection()
Open a new connection using the current URL, user name and password.
|
java.sql.Connection |
getConnection(java.lang.String user,
java.lang.String password)
Open a new connection using the current URL and the specified user name
and password.
|
java.lang.String |
getDescription()
Get the current description.
|
int |
getLoginTimeout()
Get the login timeout in seconds, 0 meaning no timeout.
|
java.io.PrintWriter |
getLogWriter()
Get the current log writer for this object.
|
java.util.logging.Logger |
getParentLogger()
[Not supported]
|
java.lang.String |
getPassword()
Get the current password.
|
javax.sql.PooledConnection |
getPooledConnection()
Open a new pooled connection using the current URL, user name and
password.
|
javax.sql.PooledConnection |
getPooledConnection(java.lang.String user,
java.lang.String password)
Open a new pooled connection using the current URL and the specified user
name and password.
|
javax.naming.Reference |
getReference()
Get a new reference for this object, using the current settings.
|
java.lang.String |
getUrl()
Get the current URL.
|
java.lang.String |
getURL()
Get the current URL.
|
java.lang.String |
getUser()
Get the current user name.
|
javax.sql.XAConnection |
getXAConnection()
Open a new XA connection using the current URL, user name and password.
|
javax.sql.XAConnection |
getXAConnection(java.lang.String user,
java.lang.String password)
Open a new XA connection using the current URL and the specified user
name and password.
|
boolean |
isWrapperFor(java.lang.Class<?> iface)
Checks if unwrap can return an object of this class.
|
void |
setDescription(java.lang.String description)
Set the description.
|
void |
setLoginTimeout(int timeout)
Set the login timeout in seconds, 0 meaning no timeout.
|
void |
setLogWriter(java.io.PrintWriter out)
Set the current log writer for this object.
|
void |
setPassword(java.lang.String password)
Set the current password.
|
void |
setPasswordChars(char[] password)
Set the current password in the form of a char array.
|
void |
setUrl(java.lang.String url)
Set the current URL.
|
void |
setURL(java.lang.String url)
Set the current URL.
|
void |
setUser(java.lang.String user)
Set the current user name.
|
java.lang.String |
toString()
INTERNAL
|
<T> T |
unwrap(java.lang.Class<T> iface)
Return an object of this class if possible.
|
debugCode, debugCodeAssign, debugCodeCall, debugCodeCall, debugCodeCall, getNextId, getTraceId, getTraceObjectName, isDebugEnabled, isInfoEnabled, logAndConvert, quote, quoteArray, quoteBigDecimal, quoteBytes, quoteDate, quoteIntArray, quoteMap, quoteTime, quoteTimestamp, setTrace, unsupportedpublic int getLoginTimeout()
getLoginTimeout in interface javax.sql.CommonDataSourcepublic void setLoginTimeout(int timeout)
setLoginTimeout in interface javax.sql.CommonDataSourcetimeout - the timeout in secondspublic java.io.PrintWriter getLogWriter()
getLogWriter in interface javax.sql.CommonDataSourcepublic void setLogWriter(java.io.PrintWriter out)
setLogWriter in interface javax.sql.CommonDataSourceout - the log writerpublic java.sql.Connection getConnection()
throws java.sql.SQLException
getConnection in interface javax.sql.DataSourcejava.sql.SQLExceptionpublic java.sql.Connection getConnection(java.lang.String user,
java.lang.String password)
throws java.sql.SQLException
getConnection in interface javax.sql.DataSourceuser - the user namepassword - the passwordjava.sql.SQLExceptionpublic java.lang.String getURL()
public void setURL(java.lang.String url)
url - the new URLpublic java.lang.String getUrl()
public void setUrl(java.lang.String url)
url - the new URLpublic void setPassword(java.lang.String password)
password - the new password.public void setPasswordChars(char[] password)
password - the new password in the form of a char array.public java.lang.String getPassword()
public java.lang.String getUser()
public void setUser(java.lang.String user)
user - the new user namepublic java.lang.String getDescription()
public void setDescription(java.lang.String description)
description - the new descriptionpublic javax.naming.Reference getReference()
getReference in interface javax.naming.Referenceablepublic javax.sql.XAConnection getXAConnection()
throws java.sql.SQLException
getXAConnection in interface javax.sql.XADataSourcejava.sql.SQLExceptionpublic javax.sql.XAConnection getXAConnection(java.lang.String user,
java.lang.String password)
throws java.sql.SQLException
getXAConnection in interface javax.sql.XADataSourceuser - the user namepassword - the passwordjava.sql.SQLExceptionpublic javax.sql.PooledConnection getPooledConnection()
throws java.sql.SQLException
getPooledConnection in interface javax.sql.ConnectionPoolDataSourcejava.sql.SQLExceptionpublic javax.sql.PooledConnection getPooledConnection(java.lang.String user,
java.lang.String password)
throws java.sql.SQLException
getPooledConnection in interface javax.sql.ConnectionPoolDataSourceuser - the user namepassword - the passwordjava.sql.SQLExceptionpublic <T> T unwrap(java.lang.Class<T> iface)
throws java.sql.SQLException
unwrap in interface java.sql.Wrapperiface - the classjava.sql.SQLExceptionpublic boolean isWrapperFor(java.lang.Class<?> iface)
throws java.sql.SQLException
isWrapperFor in interface java.sql.Wrapperiface - the classjava.sql.SQLExceptionpublic java.util.logging.Logger getParentLogger()
getParentLogger in interface javax.sql.CommonDataSourcepublic java.lang.String toString()
toString in class java.lang.Object