Manipulação de Banco de Dados com Java 1. Objetivos

Documentos relacionados
Acesso a banco de dados

Java JDBC - I. Ex. 2: para o SQLServer da Microsoft, o driver JDBC pode ser obtido em

Aula 1 Acesso a Banco de Dados

Persistência de Classes em Tabelas de Banco de Dados

Acesso a Banco. Conexão em Java. Conexão em Java. Programação Orientada a Objetos Profa. Cristiane e Prof. Daniel

Laboratório de Banco de Dados Aula 1 Acesso a Banco de Dados. Prof. Josenildo Silva jcsilva@ifma.edu.br

JDBC (Java Database Connectivity) Padrão de Projeto DAO (Data Access Object) Roteiro para instalação do banco de dados e do driver JDBC

De forma simples, para a execução de comandos SQL com JDBC, precisa-se da instancia de três classes Java. São elas: Nome da classe Função

JDBC Java Database Connectivity

Integrando Java com Banco de Dados

JDBC. Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos.

Programação Orientada a Objetos JDBC Java Database Connectivity

Especialização em web com interfaces ricas

JDBC. Prof. Márcio Bueno

Módulo 5 - JDBC java.sql - Conexão com Banco de Dados

Java na WEB Banco de Dados

JAVA JDBC COMO FUNCIONA. Programação Orientada a Objetos Flávio de Oliveira Silva 315. Programação Orientada a Objetos Flávio de Oliveira Silva 316

Acesso a Bancos de Dados em Java (JDBC)

Manipulação de Banco de Dados com Java. Ms. Bruno Crestani Calegaro Maio/ 2015

Programação WEB (JSP + Banco Dados) Eng. Computação Prof. Rodrigo Rocha

JAVA JDBC Java Database Connectivity

Desenvolvimento Web TCC Turma A-1

DSS 08/09. Camada de Dados - JDBC. Aula 1. António Nestor Ribeiro /António Ramires Fernandes/ José Creissac Campos {anr,arf,jfc}@di.uminho.

SISTEMA EXPERIMENTALL 15/11/2009. Olá! A partir de agora vamos conhecer a IDE NetBeans efetuando um micro projeto swing.

Banco de Dados. Banco de Dados. Alcides Pamplona Alcides Pamplona Linguagem de Programação CESBD 2010

JAVA COM BANCO DE DADOS PROFESSORA DANIELA PIRES

DSS 09/10. DSS 09/10 Que métodos é que fazem parte de cada camada? Aplicações Multi-camada JDBC. Aula 3 DSS 09/10

Leonardo Gresta Paulino Murta

JPA: Persistência padronizada em Java

Java com Banco de Dados Posgree

JDBC Acessando Banco de Dados

JAVA 14 ODBC / JDBC Aceder a Bases de Dados através da Internet. Vitor Vaz da Silva

Drive MySql de conexão para Eclipse

PadrãoIX. Módulo II JAVA. Marcio de Carvalho Victorino. JDBC - Java Database Connectivity A,L,F,M

Curso: Desenvolvimento Java

Introdução à linguagem SQL

Java e Conexão com Banco de Dados

Orientação a Objetos

Programação Orientada a Objetos (DPADF 0063)

Programação com Acesso a Banco de Dados

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

Java & Bancos de Dados Adaptado de Slides da Universidade Salgado de Oliveira Goiânia

JDBC. Java DataBase Connectivity

Front-End Uso da Linguagem Turbo Delphi para Acesso ao Banco de Dados Mysql

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL.

Como criar um banco de dados usando o mysql

C# - Conexão com MySQL

Programação Orientada a Objetos II

Driver Mysql para Banco de Dados. Conexão com um Banco de Dados

Desenvolvendo Aplicações Web com NetBeans

Programação Orientada a Objetos II

Persistência de Objetos no SGBD PostgreSQL, Utilizando as APIs: JDBC, JDK, Swing e Design Patteners DAO.

Trabalhando com conexão ao banco de dados MySQL no Lazarus. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Criando Banco de Dados, Tabelas e Campos através do HeidiSQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

INTRODUÇÃO. No entanto, o que pode ser considerado um produto (resultado) da criação de BDs?

Manual Banco de dados MySQL

Java JDBC Aplicação Java com Acesso a um SGBD. Ricardo Terra (rterrabh [at] gmail.com) Java JDBC Maio, 2010

TECNOLOGIAS DE ACESSO A BASES DE DADOS. Profª Ana Paula Cação Maio de 2018

UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN CURSO SUPERIOR DE TECNOLOGIA EM SISTEMAS PARA INTERNET. Programação para Internet I

Ferramentas: jar e javadoc

JDBC - Java Data Base Connectivity

Instalação do ByYou ESB. Guia de Instalação e Atualização do ByYou ESB

Programação em Rede JDBC

Exemplo25 Leitura de dados de arquivos txt. Passos para a elaboração da aplicação:

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL

Configuração Do Firebird no Ide NetBeans

1 R$ 50,00 R$ 50,00 reusable object-oriented software 2 Utilizando UML e padrões: uma

Procedimentos de Implantação ireport x Protheus

INSTALANDO E CONFIGURANDO O MY SQL

Conectividade de Banco de Dados Java JDBC

Agenda. Instalação e configuração. Processamento de comandos SQL com JDBC. Driver JDBC Criação da classe de conexão

8. Outros tipos de Transação (Modo de Transação de Autoconfirmação e Modo Implícito)

JDBC DRIVER. Objetivo: Possibilitar aplicações não Zim de se conectar a um banco de dados Zim utilizando as normas JDBC.

Manual de Instalação e Configuração do SQL Express

EXERCÍCIOS PRÁTICOS. Banco de Dados

Curso de Java. Acesso a banco de dados através de JDBC. Todos os direitos reservados Klais

JAVAWEB AULA 2 Prof. Daniela Pires Sumário

Programação WEB II. PHP e Banco de Dados. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

Android e Bancos de Dados

CURSO DE PROGRAMAÇÃO EM JAVA

JobScheduler Empresa: Assunto: Responsável: Dados de Contato: Suporte: Comercial: Financeiro:

Linguagens de Programação

Conteúdo O que é?... 4 Histórico... 4 Onde Baixar?... 4 Diferença entre Firebird e o Interbase... 4 Como instalar?... 4 Instalando o Ibexpert...

Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans.

Procedimentos para Reinstalação do Sisloc

Java Básico JDBC. Razer Anthom Nizer Rojas Montaño Banco de Dados: JDBC

Autenticação e Autorização

JAVAWEB AULA 2 Prof. Daniela Pires Sumário

Armazenamento organizado facilitando SCRUD; Agiliza processo de desenvolvimento de sistemas;

Fernando Freitas Costa. Pós-Graduando em Gestão e Docência Universitária. blog.fimes.edu.br/fernando nando@fimes.edu.br

Banco de Dados. Prof. Leonardo Barreto Campos 1

Acesso a Bancos de Dados (JDBC) Autor: Cleyton Maciel (clayton.maciel@ifrn.edu.br) Adaptação: Pedro Baesse (pedro.baesse@ifrn.edu.

Manual Captura S_Line

Acessando dados em Java com JDBC

GEPLANES GESTÃO DE PLANEJAMENTO ESTRATÉGICO MANUAL DE INSTALAÇÃO DO GEPLANES EM UM AMBIENTE WINDOWS

Instalando e configurando o Java Development Kit (JDK)

Transcrição:

Manipulação de Banco de Dados com Java 1. Objetivos Demonstrar os fundamentos básicos para a manipulação de banco de dados com Java; Apresentar a sintaxe de comandos SQL usados em Java. 2. Definições A linguagem Java possui classes que permitem a conexão com um banco de dados. Essas classes fazem parte do pacote JDBC (Java Database Connectivity), uma API (Aplication Program Interface) que permitem a comunicação com diversos bancos de dados SQL (Oracle, MySql, SqlServer, Postgre, etc.). Muitos desses bancos de dados utilizam um padrão de comunicação chamado ODBC (Open Database Connectivity) que pode ser usado para criar uma fonte de dados entre o Banco e o JDBC. O pacote JDBC fornece uma maneira bem simples de acessar tabelas em Java utilizando comandos SQL (Structured Query Language). Ele é instalado em conjunto com o JDK e voce não precisa fazer nenhuma instalação adicional para manipular banco de dados com Java. Os passos necessários para a manipulação de banco de dados por meio de uma aplicação são os seguintes: A criação de banco de dados; A definição do driver a ser usado para a conexão ao banco de dados e do endereço (URL) de sua localização; A criação da aplicação Java propriamente dita. 2.1. A Criação do Banco de Dados Os procedimentos seguintes consideram as etapas básicas para a criação do banco de dados por meio do MySql, no entanto é possível que existam pequenas variações. Para facilitar o procedimento basta somente copiar o seguinte script SQL: CREATE DATABASE colegio CREATE TABLE aluno ( al_cod int(3) unsigned NOT NULL auto_increment, al_nome varchar(40) default NULL, al_idade int(3) unsigned default '0', al_curso varchar(40) default NULL, PRIMARY KEY (al_cod), KEY al_cod (al_cod) ); INSERT INTO aluno VALUES("1", "Kátia", "23", "Secretariado"); INSERT INTO aluno VALUES("2", "Julio", "27", "Informática"); INSERT INTO aluno VALUES("3", "Diego", "34", "Edificações"); INSERT INTO aluno VALUES("4", "Deyse", "19", "Administração"); INSERT INTO aluno VALUES("5", "Laura", "24", "Saúde Bucal"); INSERT INTO aluno VALUES("6", "Hamilton", "32", "Arte"); Linguagem de Programação Página 1

2.2. A Definição do Driver para Conexão Para acessar um banco de dados por meio de Java, é necessário carregar um driver especifico do banco de dados. Existem diferentes versões para os drivers, mesmo considerando o mesmo fabricante. Na maioria dos casos, é necessário baixar o driver de um site da Internet e adicionar o caminho desse driver à variável de ambiente CLASSPATH. A seguir é apresentado o código a ser adicionado ao programa Java para o carregamento do driver, considerando diversos tipos de banco, ou seja, dependendo do banco a ser acessado, é necessário carregar um driver diferente. Em Java, o driver é carregado na memória por meio da sintaxe Class.forName( nome-do-driver-a-ser-carregado ). No Access: Class.forName( sun.jdbc.odbc.jdbcodbcdriver ); No MySql: Class.forName( com.mysql.jdbc.driver ); No Oracle: Class.forName( oracle.jdbc.driver.oracledriver ); No Microsoft SQL Server: Class.forName( com.microsoft.jdbc.sqlserver.sqlserverdriver ); No Sysbase: Class.forName( com.sybase.jdbc2.jdbc.sybdriver ); No Postgre: Class.forName( org.postegresql.driver ); No DB2/Neon: Class.forName( com.neon.jdbc.driver ); 2.3. Download do Driver Após definido o Banco de Dados que será utilizado, é necessário fazer o download do driver especifico do fabricando para fazer a conexão. Vamos tomar como base o Connector/J do fabricante MySQL que está disponível para download em http://www.mysql.com com o nome do arquivo e versão da seguinte formar: mysql-connector-java-5.1.22.zip. Download: http://cdn.mysql.com/downloads/connector-j/mysql-connector-java- 5.1.22.zip). 2.4. Criação da Aplicação em Java Para criar uma aplicação que realiza a manipulação de banco de dados, é necessário incluir instruções no programa para carregar o driver da linguagem Java (jdbc:odbc) que será o responsável por realizar a ponte com a fonte de dados ODBC. Para facilitar a compreensão, a manipulação do banco de dados será executada em duas partes: a primeira vai realizar apenas a conexão com o banco e a segunda, a manipulação do banco em si. Linguagem de Programação Página 2

2.5. Importando o driver de conexão (configurando classpath de compilação) Depois de extrair do mysql-connector-java-5.1.22.zip o arquivo mysqlconnector-java-5.1.22-bin.jar, vamos precisar importá-lo para o projeto. Como o algumas classes do projeto DataBase vai depender de outras classe em Bibliotecas, é necessário adicionar a Bibliotecas ao classpath do DataBase. Isso também garante que as classes no projeto DataBase possam se referir a classes no projeto Bibliotecas sem causar erros de compilação. Além disso, isso permite que você utilize o autocompletar de código no projeto DataBase para preencher o código com base no projeto Bibliotecas. No IDE, o classpath é visualmente representado pelo nó Bibliotecas. Para adicionar as classes de utilitário da biblioteca ao classpath do projeto: 1. na janela Projetos, clique com o botão direito do mouse no nó Bibliotecas do projeto DataBase e selecione Adicionar Jar/past, como mostrado na imagem a seguir. Imagem mostrando o comando Adicionar Jar/pasta..., oferecido quando você clica com o botão direito do mouse no nó de um projeto. 2. Procure NetBeans_projects/ e selecione a pasta de projeto Bibliotecas. O painel Arquivos JAR do projeto mostrará os arquivos JAR que podem ser adicionados ao projeto. Observe que um arquivo JAR do Bibliotecas está listado, embora ainda não tenha sido construído. Esse arquivo JAR será criado quando você construir e executar o projeto DataBase. 3. Clique em Adicionar arquivos JAR do projeto. Linguagem de Programação Página 3

4. Expanda o nó Bibliotecas. O arquivo JAR do projeto Bibliotecas será adicionado ao classpath do projeto DataBase. 3. Conexão e Consulta 3.1. Conexão com o Banco de Dados Ao executar o seguinte programa, e enviada uma mensagem indicando o sucesso ou não da conexão ao banco de dados. import java.sql.connection; import java.sql.drivermanager; import java.sql.sqlexception; import javax.swing.joptionpane; public class Conexao { public static void main(string[] args) { String driver = "com.mysql.jdbc.driver"; String url = "jdbc:mysql://localhost:3306/colegio"; try { Class.forName(driver); Connection connection = DriverManager.getConnection(url, "root", ""); JOptionPane.showMessageDialog(null, "Conexao realizada com sucesso"); connection.close(); catch (ClassNotFoundException erro) { JOptionPane.showMessageDialog(null, "Driver JDBC-ODBC não encontrado!"); catch (SQLException erro) { JOptionPane.showMessageDialog(null, "Problemas na conexao com a fonte de dados" + erro.tostring()); 3.1. Consulta ao Banco de Dados por meio do SQL Uma maneira possível de acessar um banco de dados em Java é por meio da linguagem SQL. Essa forma representa uma maneira simples de manipular dados usando a linguagem Java. Em aplicações mais robustas é comum se utilizar frameworks específicos que ocultam detalhes das operações em banco de dados. Um dos frameworks mais usado é o Hibernate (http://www.hibernate.org/). O exemplo abaixo acrescenta código do exemplo anterior, mantendo os códigos para a conexão ao banco de dados, demonstrando os procedimentos necessários para realizar a consulta ao banco de dados por meio de comando em SQL. O exemplo utiliza o banco de dados tabela aluno preenchida de acordo com o script já demonstrado. O exemplo parte do principio que o aluno já possui algum conhecimento dos comandos SQL, uma vez que já em outras disciplinas já foi estudado esse conceito. Linguagem de Programação Página 4

import java.sql.connection; import java.sql.drivermanager; import java.sql.resultset; import java.sql.sqlexception; import java.sql.statement; import javax.swing.joptionpane; public class Consulta { public static void main(string[] args) { String driver = "com.mysql.jdbc.driver"; String url = "jdbc:mysql://localhost:3306/colegio"; try { Class.forName(driver); Connection connection = DriverManager.getConnection(url, "root", ""); String sql = "SELECT al_cod, al_nome, al_idade, al_curso FROM aluno where al_idade > '18' AND al_idade < '27'order by al_curso"; Statement statement = connection.createstatement(); ResultSet resultset = statement.executequery(sql); System.out.println("COD NOME IDADE CURSO"); System.out.println("------ ------- ----- ------------ -"); while (resultset.next()) { String codigo = resultset.getstring("al_cod"); String nome = resultset.getstring("al_nome"); String idade = resultset.getstring("al_idade"); String curso = resultset.getstring("al_curso"); System.out.println(codigo + "\t" + nome+ "\t" +idade+ "\t" +curso); resultset.close(); statement.close(); connection.close(); catch (ClassNotFoundException erro) { JOptionPane.showMessageDialog(null, "Driver JDBC-ODBC não encontrado!"); catch (SQLException erro) { JOptionPane.showMessageDialog(null, "Problemas na conexao com o banco de dados" + erro.tostring()); Para Insert: String sql = "INSERT INTO aluno VALUES('11','Lola','23','Arte')"; Para Delete: String sql = "DELETE FROM aluno WHERE al_idade='19'"; Para Update: String sql = "Update aluno SET al_nome = 'Xuxa' WHERE al_cod='3'"; Para saber o numero de linhas afetada utilize da seguinte forma conforme descrito: int linhasafetadas = Linguagem de Programação Página 5