Mega Code Archive

 
Categories / Java by API / Javax Naming
 

Context INITIAL_CONTEXT_FACTORY

import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Properties; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import javax.sql.ConnectionPoolDataSource; import javax.sql.PooledConnection; public class PooledConnectionExample {   public static void main(String[] args) {     Connection connection = null;     Statement statement = null;     ResultSet resultSet = null;     try {       connection = getConnection();       statement = connection.createStatement();       String selectEmployeesSQL = "SELECT * FROM employees";       resultSet = statement.executeQuery(selectEmployeesSQL);       while (resultSet.next()) {         printEmployee(resultSet);       }     } catch (Exception e) {       e.printStackTrace();     } finally {       closeAll(resultSet, statement, connection);     }   } //Obtain connection from pool   private static Connection getConnection() throws NamingException, SQLException {     InitialContext initCtx = createContext();     String jndiName = "HrDS";     ConnectionPoolDataSource dataSource = (ConnectionPoolDataSource) initCtx.lookup(jndiName);     PooledConnection pooledConnection = dataSource.getPooledConnection();     return pooledConnection.getConnection();    }   private static InitialContext createContext() throws NamingException {     Properties env = new Properties();     env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.rmi.registry.RegistryContextFactory");     env.put(Context.PROVIDER_URL, "rmi://localhost:1099");     InitialContext context = new InitialContext(env);     return context;   }   private static void printEmployee(ResultSet resultSet) throws SQLException {     System.out.print(resultSet.getInt("employee_id"));     System.out.print(", ");     System.out.print(resultSet.getString("last_name"));     System.out.print(", ");     System.out.print(resultSet.getString("first_name"));     System.out.print(", ");     System.out.println(resultSet.getString("email"));   }   private static void closeAll(ResultSet resultSet, Statement statement, Connection connection) {     if (resultSet != null) {       try {         resultSet.close();       } catch (SQLException e) {       } // nothing we can do     }     if (statement != null) {       try {         statement.close();       } catch (SQLException e) {       } // nothing we can do     }     if (connection != null) {       try {         connection.close();       } catch (SQLException e) {       } // nothing we can do     }   } }