gostaria de saber se toda vez que for utilizar o procedimento DriverManager.getConnection o DriveManager ira criar uma nova conexao com o banco de dados?
Se ele se conectar toda vez que for executado nao a queda de performace?
gostaria de saber se toda vez que for utilizar o procedimento DriverManager.getConnection o DriveManager ira criar uma nova conexao com o banco de dados?
Se ele se conectar toda vez que for executado nao a queda de performace?
acho que se o jdbc verificar que ja existe uma conexao ele lança um SQLException, não?!?!?
nunca fiz o teste, mas acho que ele não tenta se conectar de novo…
alquem que sabe mais que agente esclarece ai por favor…
flw
Cara sempre faço essa verificação na mão, sempre que for buscar uma conexão eu faço um teste se a conexao e true, caso seja ele retorna a conexão ativa, caso não ele cria uma nova conexão
blz, era isso que eu queria saber.
poderia postar um exemplo dessa verificação se nao for pedir demais?
Beleza, eu tenho uma classe de conexão chamada DBCP onde eu crio minhas conexoes com o banco, nela eu tenho uma váriavel static representando a própria classe: private static Dbcp instance = null; quando eu crio uma conexão eu a coloco relacionada a variavel instance e toda vez que for buscar a conexão eu faço este teste:
public static Dbcp getInstance() {
if(instance == null) {
instance = new Dbcp();
}
return instance;
}
Entendeu qualquer coisa poste ai novamente.
Obs.: Está classe é responsável apenas por criar conexões ela utiliza o pattern singleton onde é instanciada apenas uma vez no sistema se o sistema não gerar nenhuma exception, caso gere ele derruba a instancia e cria outra no mesmo momento. Para manipulação dos dados que viram do banco eu tenho uma outra classe.
Tem algum material sobre singleton para indicar?
independente de onde eu instanciar a classe, ela ira manter sempre manter o valor do OBJETO INSTANCE.
a ideia nao seria, toda vez que eu instancio uma classe, criar todas as variaveis novamente?