Bom dia Colegas !
Meu problema é o seguinte, tenho uma aplicação swing que acessa um banco de dados MySql, até ai tudo bem.
Só que quando eu tenho a aplicação rodando em duas máquinas e faço uma alteração em algum dado em uma delas não aparece na outra máquina, a menos que eu feche a aplicação e abra de novo !
Alguem sabe o que pode estar errado ?
Pensei que o problema fosse na classe que gera a conexão com o banco… ai vai o código dessa classe:
/*
* ConnectionFactory.java
*
* Created on 28 de Maio de 2007, 17:33
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
package com.atm.DAO;
import atm.*;
import java.sql.*;
import javax.swing.JOptionPane;
/**
*
* @author r100320
*/
public class ConnectionFactory {
private static ConnectionFactory instanciaUnica = null;
private Connection conn = null;
private static int clientes = 0;
/** Creates a new instance of ConnectionFactory */
private ConnectionFactory(){
try {
//Conexão MySql
Class.forName("com.mysql.jdbc.Driver");
System.out.println("Conectando ao banco MySql...");
conn = DriverManager.getConnection("jdbc:mysql://localhost/atmDB",
"root","D78_hc121");
conn.setAutoCommit(false);
System.out.println("Conectado ao banco MySql...");
} catch (ClassNotFoundException e){
JOptionPane.showMessageDialog(null,"Falha na conexão com o banco de dados \n" + e.getMessage()) ;
e.printStackTrace();
} catch (SQLException e ) {
JOptionPane.showMessageDialog(null,"Falha na conexão com o banco de dados \n" + e.getMessage()) ;
e.printStackTrace();
}
}
public static ConnectionFactory getInstance(){
if (instanciaUnica == null) {
instanciaUnica = new ConnectionFactory();
}
return instanciaUnica;
}
public Connection getConnection(){
if (conn == null){
throw new RuntimeException("Conexão nula");
}
clientes++;
System.out.println("Conexão " + clientes);
return conn;
}
public void shutDown(){
System.out.println("Shutdown " + clientes);
clientes--;
if (clientes > 0)
return;
try {
conn.close();
instanciaUnica = null;
System.out.println("Conexão fechada");
conn = null;
} catch (SQLException sqle) {
System.out.println(sqle);
}
}
}
Caso alguém possa me ajudar ficarei muito agradecido !
Abraços.