org.apache.derby.jdbc
Class ClientDataSource40
java.lang.Object
   org.apache.derby.jdbc.ClientBaseDataSource
org.apache.derby.jdbc.ClientBaseDataSource
       org.apache.derby.jdbc.ClientDataSource
org.apache.derby.jdbc.ClientDataSource
           org.apache.derby.jdbc.ClientDataSource40
org.apache.derby.jdbc.ClientDataSource40
- All Implemented Interfaces: 
- java.io.Serializable, java.sql.Wrapper, javax.naming.Referenceable, javax.sql.CommonDataSource, javax.sql.DataSource
- public class ClientDataSource40 
- extends org.apache.derby.jdbc.ClientDataSource
ClientDataSource40 is a simple data source implementation
 that can be used for establishing connections in a
 non-pooling, non-distributed environment.
 The class ClientConnectionPoolDataSource40 can be used in a connection pooling environment,
 and the class ClientXADataSource40 can be used in a distributed, and pooling
 environment. Use these DataSources if your application runs under
 JDBC4.0. Use the corresponding ClientDataSource, ClientConnectionPoolDataSource, and
 ClientXADataSource classes if 
 your application runs in the following environments:
 
        
        -  JDBC 3.0 - Java 2 - JDK 1.4, J2SE 5.0
        
-  JDBC 2.0 - Java 2 - JDK 1.2,1.3
 
The example below registers a DNC data source object with a JNDI naming service.
 
 org.apache.derby.client.ClientDataSource40 dataSource = new org.apache.derby.client.ClientDataSource40 ();
 dataSource.setServerName ("my_derby_database_server");
 dataSource.setDatabaseName ("my_derby_database_name");
 javax.naming.Context context = new javax.naming.InitialContext();
 context.bind ("jdbc/my_datasource_name", dataSource);
 
 The first line of code in the example creates a data source object.
 The next two lines initialize the data source's
 properties. Then a Java object that references the initial JNDI naming
 context is created by calling the
 InitialContext() constructor, which is provided by JNDI.
 System properties (not shown) are used to tell JNDI the
 service provider to use. The JNDI name space is hierarchical,
 similar to the directory structure of many file
 systems. The data source object is bound to a logical JNDI name
 by calling Context.bind(). In this case the JNDI name
 identifies a subcontext, "jdbc", of the root naming context
 and a logical name, "my_datasource_name", within the jdbc
 subcontext. This is all of the code required to deploy
 a data source object within JNDI. This example is provided
 mainly for illustrative purposes. We expect that developers
 or system administrators will normally use a GUI tool to
 deploy a data source object.
 
 Once a data source has been registered with JNDI,
 it can then be used by a JDBC application, as is shown in the
 following example.
 
 javax.naming.Context context = new javax.naming.InitialContext ();
 javax.sql.DataSource dataSource = (javax.sql.DataSource) context.lookup ("jdbc/my_datasource_name");
 java.sql.Connection connection = dataSource.getConnection ("user", "password");
 
 The first line in the example creates a Java object
 that references the initial JNDI naming context. Next, the
 initial naming context is used to do a lookup operation
 using the logical name of the data source. The
 Context.lookup() method returns a reference to a Java Object,
 which is narrowed to a javax.sql.DataSource object. In
 the last line, the DataSource.getConnection() method
 is called to produce a database connection.
 
 This simple data source subclass of ClientBaseDataSource maintains
 it's own private password property.
 
 The specified password, along with the user, is validated by DERBY.
 This property can be overwritten by specifing
 the password parameter on the DataSource.getConnection() method call.
 
 This password property is not declared transient, and therefore
 may be serialized to a file in clear-text, or stored
 to a JNDI server in clear-text when the data source is saved.
 Care must taken by the user to prevent security
 breaches.
 
- See Also:
- Serialized Form
 
| Fields inherited from class org.apache.derby.jdbc.ClientDataSource | 
| className__ | 
 
| Fields inherited from class org.apache.derby.jdbc.ClientBaseDataSource | 
| CLEAR_TEXT_PASSWORD_SECURITY, connectionAttributes, ENCRYPTED_PASSWORD_SECURITY, ENCRYPTED_USER_AND_PASSWORD_SECURITY, propertyDefault_portNumber, propertyDefault_retrieveMessageText, propertyDefault_securityMechanism, propertyDefault_serverName, propertyDefault_traceFileAppend, propertyDefault_traceLevel, propertyDefault_user, securityMechanism, SSL_BASIC, SSL_OFF, SSL_PEER_AUTHENTICATION, STRONG_PASSWORD_SUBSTITUTE_SECURITY, TRACE_ALL, TRACE_CONNECTION_CALLS, TRACE_CONNECTS, TRACE_DIAGNOSTICS, TRACE_DRIVER_CONFIGURATION, TRACE_NONE, TRACE_PARAMETER_META_DATA, TRACE_PROTOCOL_FLOWS, TRACE_RESULT_SET_CALLS, TRACE_RESULT_SET_META_DATA, TRACE_STATEMENT_CALLS, TRACE_XA_CALLS, traceLevel, USER_ONLY_SECURITY | 
 
 
| Method Summary | 
|  boolean | isWrapperFor(java.lang.Class<?> interfaces)Returns false unless
 interfacesis implemented | 
| 
 | unwrap(java.lang.Class<T> interfaces)Returns
 thisif this class implements the interface | 
 
| Methods inherited from class org.apache.derby.jdbc.ClientDataSource | 
| getConnection, getConnection | 
 
| Methods inherited from class org.apache.derby.jdbc.ClientBaseDataSource | 
| computeDncLogWriter, getClientSSLMode, getConnectionAttributes, getCreateDatabase, getDatabaseName, getDataSourceName, getDescription, getLoginTimeout, getLogWriter, getPassword, getPassword, getPortNumber, getReference, getRetrieveMessageText, getRetrieveMessageText, getSecurityMechanism, getSecurityMechanism, getSecurityMechanism, getServerName, getShutdownDatabase, getSsl, getSSLModeFromString, getTraceDirectory, getTraceDirectory, getTraceFile, getTraceFile, getTraceFileAppend, getTraceFileAppend, getTraceLevel, getTraceLevel, getUpgradedSecurityMechanism, getUser, getUser, setConnectionAttributes, setCreateDatabase, setDatabaseName, setDataSourceName, setDescription, setLoginTimeout, setLogWriter, setPassword, setPortNumber, setRetrieveMessageText, setSecurityMechanism, setServerName, setShutdownDatabase, setSsl, setSsl, setTraceDirectory, setTraceFile, setTraceFileAppend, setTraceLevel, setUser | 
 
| Methods inherited from class java.lang.Object | 
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
| Methods inherited from interface javax.sql.CommonDataSource | 
| getLoginTimeout, getLogWriter, setLoginTimeout, setLogWriter | 
 
ClientDataSource40
public ClientDataSource40()
isWrapperFor
public boolean isWrapperFor(java.lang.Class<?> interfaces)
                     throws java.sql.SQLException
- Returns false unless interfacesis implemented
 
- 
- Parameters:
- interfaces- a Class defining an interface.
- Returns:
- true                   if this implements the interface or 
                                directly or indirectly wraps an object 
                                that does.
- Throws:
- java.sql.SQLException- if an error occurs while determining 
                                whether this is a wrapper for an object 
                                with the given interface.
 
unwrap
public <T> T unwrap(java.lang.Class<T> interfaces)
         throws java.sql.SQLException
- Returns thisif this class implements the interface
 
- 
- Parameters:
- interfaces- a Class defining an interface
- Returns:
- an object that implements the interface
- Throws:
- java.sql.SQLExption- if no object if found that implements the 
 interface
- java.sql.SQLException
 
Apache Derby 10.3 API Documentation  -  Copyright © 2004,2007 The Apache Software Foundation. All Rights Reserved.