Guia de JDBC, DAO e Tratamento de Exceções em Java

Classificado em Computação

Escrito em em português com um tamanho de 3,48 KB

JDBC (Java Database Connectivity): É utilizada para realizar a comunicação entre a aplicação Java e o Banco de Dados (BD). Requer um arquivo .JAR.

Java.sql.DriverManager: É um gerente de drivers que gerencia os drivers de conexão.

Criar conexão: Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@ipDoBanco:1521:nomeDaBase", "usuario", "senha");

CRUD: Acrônimo para Create (Criar), Read (Ler), Update (Atualizar) e Delete (Excluir).

RecordSet: Representa um conjunto de registros de uma tabela ou o conjunto de registros resultante de uma consulta SQL.

Abre RS: set rst = db.openRecordset("Select * from Clientes where Cidade" & "='SP'", dbOpenForwardOnly, dbReadOnly)

Fecha RS: rst.close

Pacotes e Organização: As classes Contato, ContatoDAO e Conexao devem estar localizadas no pacote Model.

Diferença entre PreparedStatement e Statement: Ambas as classes têm a função de comunicação com o BD, passando os comandos a serem executados no banco. A diferença entre elas é que a PreparedStatement permite a passagem de parâmetros para o comando SQL, enquanto o Statement é fixa.

Uso da classe ResultSet: Essa classe é usada somente quando se utiliza o comando SELECT para selecionar os registros de um BD. Ela é capaz de armazenar valores em forma de linhas, recebendo os resultados obtidos em um comando de consulta.

Integração MVC com BD: É feita pela camada Model, que é responsável pela conexão com o BD utilizando o driver JDBC.

Pontos de Atenção: Precisamos nos preocupar com a manipulação dos dados, garantindo que a execução corresponda exatamente ao que foi definido.

O que é DAO e para que serve: Data Access Object. É onde criamos as instruções de comunicação com o BD, como obter conexões, executar comandos SQL, entre outros.

Tratamento de Exceções em Java: O tratamento pode ser feito através do bloco try/catch. Nesse caso, um erro "previsto" é tratado sem interromper a execução do programa dentro do bloco catch.

Diferença entre Exceções Checked e Unchecked: Checked são exceções previstas pelo compilador, que devem ser tratadas dentro de um try/catch; elas são tratadas e lançadas de volta à execução sem interromper o programa. Já as Unchecked não são previstas, pois ocorrem em tempo de execução; se ocorrerem, o programa irá parar de executar.

Completar código:

try {
    Class.forName("oracle.jdbc.driver.OracleDriver");
} catch (ClassNotFoundException ex) {
    System.out.println("Conexão falhou");
} catch (SQLException ex) {
    System.out.println("Conexão falhou");
}

try {
    String sql = "insert into contatos (?,?,?)";
    stmt.setString(1, contato.getNome());
    stmt.setString(2, contato.getEmail());
    stmt.setString(3, contato.getEndereco());
    stmt.execute();
    stmt.close();
    return true;
} catch (SQLException ex) {
    System.out.println("Erro");
    return false;
}

Entradas relacionadas: