yes, for example...
import java.sql.Types;
import java.util.Vector;
import javax.naming.InitialContext;
import javax.sql.DataSource;
import br.df.gov.caesb.seguranca.RegistrarLog;
/**
* Descri��o: Classe que cont�m os resultados de uma pesquisa realizada no Banco
* de Dados
*/
public class Container implements Serializable {
/**
* Indica a listagem de conex�es ativas
*/
private static Vector listaConexao = new Vector();
/**
* Indica o objeto que reter� o pool de conex�es
*/
private static DataSource ds;
/**
* Indica o objeto Statement
*/
private static Statement sttm;
/**
* Indica o nome do recurso JNDI recuperado pelo Listener
*
*/
private static
String fonteDados;
/**
*
*/
public Container() {
}
/**
* M�todo utilizado para realizar uma pesquisa no Banco de Dados abrindo: um
* canal de conex�o e um espa�o destinado ao resultado da consulta. Throws
* SQLException
*
* @param sql
* String
* @result ResultSet
* @see java.sql.ResultSet *
* @see java.sql.Connection
* @see java.sql.Statement
* @see java.sql.ResultSet
*/
public static Connection getConnection() throws SQLException {
try {
InitialContext initialcontext = new InitialContext();
ds = (DataSource) initialcontext.lookup(Container.getFonteDados());
Connection conn = ds.getConnection();
conn.setAutoCommit(false);
return conn;
} catch (javax.naming.NamingException e) {
RegistrarLog.log(RegistrarLog.ERRO,
"Um problema ocorreu ao recuperar o objeto DataSource.\n"
+ e.toString());
return null;
}
}