java01_main.java
                                            
                                            Hello World. Create & initialize database if not present. Create one record, read and print all records.
import java.sql.Connection;
                                                    import java.sql.DriverManager;
                                                    import java.sql.PreparedStatement;
                                                    import java.sql.ResultSet;
                                                    import java.sql.SQLException;
                                                    import java.sql.Statement;
                                                    /*
                                                    
                                                     * helloWorldJDBC: This example program shows the basic steps of creating
                                                    
                                                     * a JDBC application. This class performs the following.  Inserts data into 
                                                    
                                                     * the database, retrieves the data using a ResultSet object, which is then 
                                                    
                                                     * displayed out to the screen.This example uses the JNI connection URL. In order 
                                                    
                                                     * to use JDBC you must specify your connection URL as "jdbc:raima:rdm://localhost" 
                                                    
                                                     * instead of the JNI which is "jdbc:raima:rdm://local". The comments are javadoc
                                                    
                                                     * style for consistency.
                                                    
                                                     * @author Kevin Hooks
                                                    
                                                     * Date : 2-2-2012
                                                    
                                                     */
                                                    
                                                    public class java01_main {
                                                    /*
                                                    
                                                         * main: This method connects to the driver by using the connection URL
                                                    
                                                         * through JNI (TCP/IP). The database is then opened and cleaned up. 
                                                    
                                                         * The string "Hello World!" is then inserted into the database. Every 
                                                    
                                                         * object is initialized to null so that it can be used inside of each
                                                    
                                                         * block (try, catch, finally).
                                                    
                                                         * @param args
                                                    
                                                         * @throws SQLException 
                                                    
                                                         */
                                                    
                                                    public static void main(String[] args) throws SQLException {
                                                    // Connection object used for connecting to driver
                                                    
                                                            Connection Conn = null; 
                                                    // Statement object used for executing SQL Statements
                                                    
                                                            Statement Stmt = null;
                                                    // Prepared Statement object used for preparing SQL Statements
                                                    
                                                            PreparedStatement prepStmt = null;
                                                    // Result Set object used for storing queried values
                                                    
                                                            ResultSet rs = null;
                                                    // The try block contains the main portion of the code. The code is contained
                                                    
                                                    // inside here so that if it fails the exception will be caught inside the
                                                    
                                                    // catch blocks.
                                                    
                                                    try
                                                    
                                                            {
                                                    // Connects to driver using connection URL and passed into Connection
                                                    
                                                    // Object
                                                    
                                                                Conn = DriverManager.getConnection("jdbc:raima:rdm://local");
                                                    // Creates the Statement object to be used for future SQL Statement
                                                    
                                                    // executions
                                                    
                                                                Stmt = Conn.createStatement();
                                                    // Opens database
                                                    
                                                                Stmt.executeUpdate("USE \"java01Example\"");
                                                    //Used to clear table if there is previous data
                                                    
                                                                Stmt.executeUpdate("DELETE FROM hello_table");
                                                    // Prepares the insert statement for execution
                                                    
                                                                prepStmt = Conn.prepareStatement("INSERT INTO hello_table (f00) VALUES (?)");
                                                    // Performs a setter method for a string setting the value of the
                                                    
                                                    // parameter above
                                                    
                                                                prepStmt.setString(1, "Hello World!");
                                                    //Executes prepared Statement
                                                    
                                                                prepStmt.execute();
                                                    // Commits all changes
                                                    
                                                                Conn.commit();
                                                    // Executes a select statement and stores queried results in the result
                                                    
                                                    // set
                                                    
                                                                rs = Stmt.executeQuery("SELECT * FROM hello_table");
                                                    // Loops through the result set, checking for when the next value is
                                                    
                                                    // null. We only expect 1 iteration. The contents of helloString are
                                                    
                                                    // then received from the getter method. The results are then printed
                                                    
                                                    // to the screen
                                                    
                                                    while (rs.next() != false)
                                                                {
                                                                    String helloString = rs.getString(1);
                                                                    System.out.println(helloString);
                                                                }
                                                            }
                                                    // The catch block is used to catch an exceptions that are thrown above and 
                                                    
                                                    // display them to the screen. Currently the only type of exception we can
                                                    
                                                    // expect would be a SQLException otherwise we would have to have another
                                                    
                                                    // catch block for each possible exception 
                                                    
                                                    catch (SQLException exception)
                                                            {
                                                                System.err.println("An exception has occured : " + exception.toString());
                                                                System.exit (1);
                                                            }
                                                    // The finally block is used to execute after the try block has been
                                                    
                                                    // performed. It is also executed if an exception is thrown, this way you
                                                    
                                                    // can clean up any open objects without missing the .close() on a failure.
                                                    
                                                    // Every object must be closed as you would a handle in ODBC. 
                                                    
                                                    finally
                                                    
                                                            {
                                                    if (rs != null)
                                                                {
                                                                    rs.close();
                                                                }
                                                    if (prepStmt != null)
                                                                {
                                                                    prepStmt.close();
                                                                }
                                                    if (Stmt != null)
                                                                {
                                                                    Stmt.close();
                                                                }
                                                    if (Conn != null)
                                                                {
                                                                    Conn.close();
                                                                }
                                                            }
                                                        }
                                                    }