Boa tarde pessoal,
bom é o seguinte, sei que esse é um tópico antigo e repetitivo, porém tenho algumas dúvidas que não achei em lugar algum, e sei que muita gente ainda tem essa dúvida.
1. Hoje tenho uma aplicação que faz uma implementação de um pool de conexão usando as APIs da Apache, porem achei uma má pratica e estou alterando para que seja usado o controle de pool do datasource oferecido pelo servidor de aplicação, usando o JNDI, no caso o Tomcat. Isso realmente será uma melhoria em questão de boa pratica, mas a minha dúvida é se isso ira diminuir a carga de processamento da aplicação, já que não será ela que ira controlar o pool e sim o servidor. Essa afirmação é válida?
2. Aqui já está tudo funcionando perfeitamente, porém in-code, eu gostaria de saber os dados do pool, tipo numero de conexões ativas, numero de conexões em ?idle?, essas coisas. Na outra implmentação eu tinha acesso diretamente ao Pool, agora tenho somente acesso ao DataSource, como no código abaixo. Alguém sabe como acessar essas informações?private static InitialContext cxt = null;
private static DataSource dataSource = null;
/* ... */
public static synchronized Connection getConnection() {
/* ... */
try {
//se não estiver iniciado
if (cxt == null) {
cxt = new InitialContext();
}
if (dataSource == null) {
dataSource = (DataSource) cxt.lookup( "java:/comp/env/jdbc/TestDBApp" );
}
return dataSource.getConnection();
/* ... */
} catch (Exception ex) {
/* ... */
return null;
}
}
Espero que alguém possa me ajuda, obrigado... 8)