Proper usage of JDBC Connection Pool (Glassfish)

Apart from the C-style formatting, a few unnecessary lines and a bit poor exception handling, you can just do so.

Here’s how I’d do it:

public final class SQLUtil {
    private static DataSource dataSource;
    // ..

    static {
        try {
            dataSource = (DataSource) new InitialContext().lookup(name);
        } catch (NamingException e) {
            throw new ExceptionInInitializerError(e);
        }
    }

    public static Connection getConnection() throws SQLException {  
        return dataSource.getConnection();             
    }
}

I throw here ExceptionInInitializerError so that the application will immediately stop so that you don’t need to face “unexplainable” NullPointerException when trying to obtain a connection.

Leave a Comment