olá pessoal,
quero refatorar meu codigo, quando faço uma inserção, update etc.. eu crio uma conexão dentro de cada método, quero isolar a classe conexão, mas estou tendo dificuldade.
começei assim:
package rpa.Dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
/**
*
* @author josiel
*/
public class Conexao {
String dbUrl = "jdbc:postgresql://localhost:5432/RPA";
String dbDriver = "org.postgresql.Driver";
String dbUser = "postgres";
String dbSenha = "postgre";
try {
Class.forName ("org.postgresql.Driver");
Connection con;
con = DriverManager.getConnection(dbUrl, dbUser, dbSenha);
}
catch(SQLException ex){
ex.printStackTrace();
}
}
li uns tutoriais, mas esta dificil isolar esta classe. que se eu conseguir fazer isto, eu crio um algoritmo pra chamar apenas uma conexão em vez de ficar criando multiplas conexões....
eu acostumei a criar conexões deste modo:
public boolean inserir(AlunoVO aluno) {
boolean retorno = false;
Connection con = null; //DEFININDO OBJETO DE CONEXAO COM BD.
try {
try {
Class.forName(dbDriver);
} catch (ClassNotFoundException ex) {
ex.printStackTrace();
}
con = DriverManager.getConnection(dbUrl, dbUser, dbSenha);
con.setAutoCommit(false);
Statement stat = con.createStatement();
String sql = "insert into aluno(matricula, primeiro_nome, ultimo_nome)" + "values ("
+ aluno.getMatricula() + ",'"
+ aluno.getPrimeiroNome() + "','" + aluno.getUltimoNome() + "')";
System.out.println(sql);
stat.executeUpdate(sql);
con.commit();
stat.close();
con.close();
retorno = true;
} catch (SQLException e) {
try {
con.rollback();
con.close();
} catch (Exception ex) {
ex.printStackTrace();
}
}
return retorno;
}
help-me?