Orientação a Objetos Conexão:Banco de Dado MySQL JDBC / DriverManager/ ResultSet Gil Eduardo de Andrade
O pacote MySQL-Connector Quando utilizamos o Banco de Dados MySQL, integrado a linguagem Java, necessitamos do pacote MySQL-Connector; Esse pacote deve ser adicionado ao projeto em desenvolvimento, pois possui os driverse implementações necessários para efetuar a comunicação entre o Java e o MySQL; Aula 16: Conexão: Banco de Dados MySQL Gil Eduardo de Andrade
O pacote MySQL-Connector O pacote MySQL-Connectoré mantido e distribuído livremente, pode ser obtido em: http://dev.mysql.com/downloads/connector/j/ O próximo slide apresenta os passos necessários para adicionar o MySQL- Connectorao projeto, considerando que o mesmo já tenha sido baixado;
Adicionando o pacote MySQL ao projeto (considerando a IDE Netbeans) Botão direito do mouse sobre o projeto / Propriedades Bibliotecas / Adicionar JAR
Implementando uma classe de Conexão (Conexao.java) A conexão e execução de queryno banco são rotinas (trechos de código) comuns as mais variadas aplicações; Sendo assim, uma classe de conexão, bem como métodos que permitem executar uma query será apresentada a seguir;
Parâmetros para uma conexão Qualquer que seja a conexão a ser efetuada com o banco de dados, ela necessitará dos seguintes parâmetros: Path/Caminho: endereço de rede onde encontra-se o BD; Nome do Banco: nome da base de dados a ser conectada; Usuário:nome do usuário, no banco, que fará a conexão; Senha: senha do usuário, no banco, que fará a conexão;
Construtor da Classe (java.sql.connection / java.sql.statement) O construtor da classe irá receber como parâmetro os dados para conexão;
Método Conectar() O método Conectar() permite criar uma conexão com o banco, que é armazenada pelo objeto da classe Connection estado da conexão; Também na conexão é criado um objeto da classe Statement, que permite executar as transações (query) com o banco;
Método Conectar() (java.sql.driverconnection) 1) O método getconnection() recebe como parâmetros: uma string contendo o caminho de rede do banco de dados + o nome da base para conexão; uma string contendo o nome do usuário para conexão; uma string contendo a senha do usuário para conexão; e retorna: um objeto da classe Connection, que permite abrir e fechar uma conexão; 2) O método createstatement() da classe Connection retorna um objeto do tipo Statement que permite executar queries do tipo: SELECT, INSERT, UPDATE, DELETE, etc.
Método Desconectar() 1) Os métodos close() permitem: fechar uma conexão anteriormente aberta com o banco de dados this.con.close() ; e finalizar um canal de comunicação anteriormente aberto para execução de transações com o banco de dados this.execute.close() ;
Método executequery() 1) O método executeupdate(query)permite: executar uma determinada queryno banco de dados. Recebe como parâmetro a string que representa a querya ser executada. Utilizado para execução de queriesdo tipo INSERT, UPDATEe DELETE. Retorna um valor inteiro indicando se a execução foi bem sucedida ou não;
Método Select() (java.sql.resultset 1) O método executequery(query)permite: executar uma querydo tipo SELECTno banco de dados. Recebe como parâmetro a string que representa a querya ser executada. Retorna um objeto do tipo ResultSetque contém o conjunto dos resultados obtidos pela execução;
A Classe ResultSet A classe ResultSetpermite armazenar os dados obtidos do banco de dados através da execução de uma querydo tipo SELECT; A ResultSetpossui diversos métodos que permitem ao usuário acessar as informações nela armazenadas;
Métodos da classe ResultSet voidnext():permite navegar para próxima linha de resultados (próxima linha da tabela); intgetint(string c):permite obter o valor do campo c do conjunto de resultados de um SELECT, convertendo-o para inteiro; StringgetString(Stringc):permite obter o valor do campo c do conjunto de resultados de um SELECT, convertendo-o para string;
Exemplo : Utilização de um ResultSet Considere a tabela tb_alunos :
Exemplo : Utilização de um ResultSet Considere o trecho de código:
Exemplo : Utilização de um ResultSet Resultado da execução do código: