by
[Exercise |
API Docs |
Short Course|
Exercises]
Help is available for each task.
Task 1
Given the following ConnectU.properties file:
#PropertiesResourceBundle for Connection Properties
CSDriver=COM.cloudscape.core.RmiJdbcDriver
CSURL=jdbc:cloudscape:rmi:jGuru
CSUserID=sa
CSPassword=admin
|
Set up String variables to access the keys and to hold the returned values. Also set up Strings 1) containing the name of the properties file - ConnectU, and 2) containing a SELECT statement to get the single row having MoJava in its Type column.
Insert the following code:
String sDriver,
sDriverKey = "CSDriver",
sPassword,
sPasswordKey ="CSPassword",
sQuery =
"SELECT * FROM JJJJData " +
"WHERE Type = 'MoJava'",
srbName = "ConnectU",
sURL,
sURLKey="CSURL",
sUserID,
sUserIDKey = "CSUserID";
|
Task 2
Access the ResourceBundle and retrieve the driver name, databaseURL, userID and password.
try // get the PropertyResourceBundle
{
rbConnect = ResourceBundle.getBundle( srbName );
sDriver = rbConnect.getString( sDriverKey );
sPassword = rbConnect.getString( sPasswordKey );
sURL = rbConnect.getString( sURLKey );
sUserID = rbConnect.getString( sUserIDKey );
}
catch( MissingResourceException mre )
{
System.err.println(
"ResourceBundle problem for " +
srbName + ", program ends." );
System.err.println("Specific error: " +
mre.getMessage() );
return; // exit on error
}
|
Task 3
Load the driver.
Class.forName( sDriver ).newInstance();
Task 4
Get a Connection; get a DatabaseMetaData object using dbmd and report the DBMS and driver name and version; create a Statement.
con = DriverManager.getConnection ( sURL,
sUserID,
sPassword);
DatabaseMetaData dbmd = con.getMetaData();
System.out.println(
"DBMS: " +
dbmd.getDatabaseProductName() + ", " +
dbmd.getDatabaseProductVersion() );
System.out.println(
"Driver: " +
dbmd.getDriverName() + ", " +
dbmd.getDriverVersion() );
stmt = con.createStatement();
|
Task 5
Execute the query. If data was returned, get the ResultSetMetadata ColumnName, ColumnTypeName and ColumnClassName and report them for each column in the ResultSet.
rs = stmt.executeQuery( sQuery );
if( rs.next() ) // get first row
{ // if data was returned
rsmd = rs.getMetaData();
System.out.println();
int i = rsmd.getColumnCount();
for( int ndx = 1; ndx <= i; ndx++ )
{
System.out.println(
"Column Name: " +
rsmd.getColumnName( ndx ) + "." );
System.out.println(
"Column SQL Type: " +
rsmd.getColumnTypeName( ndx ) + "." );
System.out.println(
"Column Java Class Equivalent: " +
rsmd.getColumnClassName( ndx ) + ".\n" );
}
} // end if( result.next() )
|
Copyright 1996-2000 jGuru.com. All Rights Reserved.
|
|