import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Vector;
import model.Pessoa;
import banco.ConFactory;
import javax.swing.JOptionPane;
public class DaoPessoa {
// Configura essas variáveis de acordo com o seu banco
private final String URL = “jdbc:mysql://localhost/login”,
NOME = “root”, SENHA = “”;
private Connection con;
private Statement comando;
public void apagar(String cod_usuario) {
conectar();
try {
comando
.executeUpdate(“DELETE FROM pessoa WHERE cod_usuario= '” + cod_usuario
+ “’;”);
} catch (SQLException e) {
imprimeErro(“Erro ao apagar pessoas”, e.getMessage());
} finally {
fechar();
}
}
public Vector buscarTodos() {
conectar();
Vector resultados = new Vector();
ResultSet rs;
try {
rs = comando.executeQuery(“SELECT * FROM pessoa”);
while (rs.next()) {
Pessoa temp = new Pessoa();
// pega todos os atributos da pessoa
temp.setCod_usuario(rs.getString(“cod_usuario”));
temp.setNome(rs.getString(“nome”));
temp.setSenha(rs.getString(“senha”));
resultados.add(temp);
}
return resultados;
} catch (SQLException e) {
imprimeErro(“Erro ao buscar pessoas”, e.getMessage());
return null;
}
}
public void atualizar(Pessoa pessoa) {
conectar();
String com = “UPDATE pessoa SET nome = '” + pessoa.getNome()
+ “’, senha =’” + pessoa.getSenha() + “’ WHERE cod_usuario =’”+ pessoa.getCod_usuario()+"’;";
System.out.println(“Atualizada!”);
try {
comando.executeUpdate(com);
} catch (SQLException e) {
e.printStackTrace();
} finally {
fechar();
}
}
public Vector buscar(String nome) {
conectar();
Vector resultados = new Vector();
ResultSet rs;
try {
rs = comando.executeQuery(“SELECT * FROM pessoa WHERE nome LIKE '”
+ nome + “%’;”);
while (rs.next()) {
Pessoa temp = new Pessoa();
// pega todos os atributos da pessoa
temp.setCod_usuario(rs.getString(“cod_usuario”));
temp.setNome(rs.getString(“nome”));
temp.setSenha(rs.getString(“senha”));
resultados.add(temp);
}
return resultados;
} catch (SQLException e) {
imprimeErro(“Erro ao buscar pessoa”, e.getMessage());
return null;
}
}
public void insere(Pessoa pessoa){
conectar();
try {
comando.executeUpdate(“INSERT INTO pessoa VALUES(’”+ pessoa.getCod_usuario()+"’,’" + pessoa.getNome() + “’,’” + pessoa.getSenha() + “’)”);
System.out.println("Inserida!");
} catch (SQLException e) {
imprimeErro("Erro ao inserir Pessoa", e.getMessage());
} finally {
fechar();
}
}
private void conectar() {
try {
con = ConFactory.conexao(URL, NOME, SENHA, ConFactory.MYSQL);
comando = con.createStatement();
System.out.println(“Conectado!”);
} catch (ClassNotFoundException e) {
imprimeErro(“Erro ao carregar o driver”, e.getMessage());
} catch (SQLException e) {
imprimeErro(“Erro ao conectar”, e.getMessage());
}
}
private void fechar() {
try {
comando.close();
con.close();
System.out.println(“Conexão Fechada”);
} catch (SQLException e) {
imprimeErro(“Erro ao fechar conexão”, e.getMessage());
}
}
private void imprimeErro(String msg, String msgErro) {
JOptionPane.showMessageDialog(null, msg, “Erro crítico”, 0);
System.err.println(msg);
System.out.println(msgErro);
System.exit(0);
}
}