JDBC Java Database Connectivity



Documentos relacionados
Scriptlets e Formulários

Java Beans e Servlets

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

Java Server Pages: Apresentação e Instalação

Aula 1 Acesso a Banco de Dados

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

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

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

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

Aula 03 - Projeto Java Web

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

CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO

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

Orientação a Objetos

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

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

Persistência de Classes em Tabelas de Banco de Dados

Leonardo Gresta Paulino Murta

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

JAVAWEB AULA 2 Prof. Daniela Pires Sumário

JAVAWEB AULA 2 Prof. Daniela Pires Sumário

Java com Banco de Dados Posgree

Procedimentos para Instalação do Sisloc

Programação com Acesso a Banco de Dados

Procedimentos para Reinstalação do Sisloc

Desenvolvimento Web TCC Turma A-1

Acesso a Bancos de Dados em Java (JDBC)

Java na Web. Aplicações Web

Secretaria da Educação do Estado do Rio Grande do Sul. Manual: Sistema de Controle Patrimonial Inventário

Procedimentos para Instalação do SISLOC

Para começarmos as configurações, primeiramente vamos habilitar o DVR Veicular para o acesso. Clique em Menu e depois entre em Geral.

INTRODUÇÃO À TECNOLOGIA SERVLETS

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource Rev: 02

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

PHP Material de aula prof. Toninho (8º Ano)

ROTEIRO DE INSTALAÇÃO

Programação Orientada a Objetos (DPADF 0063)

Prática Sobre Servlets e JSP

Acesso a banco de dados

Desenvolvendo Aplicações Web com NetBeans

MANUAL DO ANIMAIL Terti Software

Instalando o WordPress em localhost

GUIA INTEGRA SERVICES E STATUS MONITOR

Utilizando o correio eletrônico da UFJF com Thunderbird e IMAP

HelpAndManual_unregistered_evaluation_copy Manual de Instalação do VisualControl

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

JDBC. Prof. Márcio Bueno

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

PROGRAMAÇÃO SERVIDOR MIDDLEWARE JDBC: USANDO O JAVA DB EM SISTEMAS WEB. Prof. Dr. Daniel Caetano

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL

Introdução ao Sistema. Características

Unidade 7: Middleware JDBC e Java DB Prof. Daniel Caetano (Fonte: Tutorial Oficial do NetBeans)

Integrando Java com Banco de Dados

Acessando um Banco de Dados

Instalação e utilização do Document Distributor

Android e Bancos de Dados

Programação Orientada a Objetos JDBC Java Database Connectivity

Manual de Instalação e Configuração do Primeiro Backup Versão PRO

Docas do Pará - Guia de Instalação

Acesso à Dados ZEOS x Delphi. Professor Anderson

Guia de Instalação e Atualização do Sistema Podológico

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

TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH!

Manual de Instalação e Configuração do Primeiro Backup Versão LITE

TUTORIAL DE INSTALAÇÃO APACHE PHP POSTGRESQL 8.2

CONFIGURAÇÃO DE REDE SISTEMA IDEAGRI - FAQ CONCEITOS GERAIS

Configurando um Grupo Doméstico e Compartilhando arquivos no Windows 7

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

Manual de Instalação. SafeSign Standard (Para MAC OS 10.7)

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA

BAIXA E INSTALAÇÃO DE CERTIFICADO A1. Versão 1.0r0 de 29 de Janeiro Classificação: Ostensivo

Este tutorial está publicado originalmente em

SAD Gestor Gerenciador de Backup

Java na WEB Banco de Dados

MANUAL DE CONFIGURAÇÃO

Manipulação de Dados em PHP (Visualizar, Inserir, Atualizar e Excluir) Parte 2

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza

Introdução ao Tableau Server 7.0

Procedimentos de Implantação ireport x Protheus

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

Banco de Dados. Prof. Leonardo Barreto Campos 1

C# - Conexão com MySQL

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

Manual de Instalação do Servidor Orion Phoenix Versão Novembro/2010

Configuração do Linux Educacional 5 para melhor uso do MonitorINFO-V4

Instalando o Lazarus e outros sistemas de suporte. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Frente Loja Avanço (PAF-ECF) versão Rotina de Atualização Frente Avanço Windows

Visão Geral sobre o tutorial de Utilização de

COMO USAR O DROPBOX. Como usar o Dropbox (Foto: Reprodução/Ramon Cardoso)

Sistema de Chamados Protega

PROCEDIMENTOS PARA A INSTALAÇÃO E UTILIZAÇÃO DO APLICATIVO DE LEILÃO ELETRÔNICO DA CONAB

Dicas de uso para Cloud Computing

PHP AULA1. Prof. Msc. Hélio Esperidião

Figura 1. A Classe Java

Programando em PHP. Conceitos Básicos

Conexão ODBC do MySQL com Excel 2010

Procedimentos para Instalação da DES 3.0.

Transcrição:

5 JDBC Java Database Connectivity Prof. Autor: Daniel Morais dos Reis e-tec Brasil Programação Avançada Para Web Página1

Meta Trabalhar com bancos de dados em aplicações web em JSP através das classes JDBC Objetivos Ao final desta aula, você deverá ser capaz de: Entender os principais aspectos de aplicações em camadas com bancos de dados. Página2

1 Interação entre bancos de dados e JSP As classes Java para trabalhar com bancos de dados estão dentro da JDBC (Java Database Connectivity) conforme foi visto na disciplina de Linguagens de Programação II. Para trabalhar com bancos de dados em Java como foi visto na disciplina de Linguagens de Programação II, são necessários 3 objetos: Connection Responsável por carregar os dados da conexão com o banco de dados; Statemente Executa comandos SQL no banco de dados; ResultSet Armazena dados retornados por Statements depois de executar comandos SQL (mais comumente utilizado após ser executado um comando select no banco de dados); Iremos desta quinzena até a quinzena 8 desenvolver um sistema de cadastro de nomes e telefones de alunos bastante simples utilizado banco de dados mas que nos possibilitará abordar diversos recurso da linguagem Java/JSP. Será necessário também que você se lembre dos comandos SQL aprendidos na disciplina de Bancos de Dados, portanto em caso de dúvidas recorra ao material desta disciplina. Crie no seu servidor de banco de dados MySQL um banco de dados aula, dentro deste banco de dados a tabela a seguir: Tabela Aluno Campo Idaluno Nome Telefone Propriedades Int, not null, primary key, autoincrement Varchar(100) Varchar(20) Página3 Lembre do endereço ip de seu servidor (caso o MySQL esteja instalado em sua própria máquina, você pode usar o endereço localhost ), seu usuário e senha de acesso a este banco de dados (tipicamente o usuário root). Cadastre na tabela Aluno 3 registros de alunos (nome e telefone).

Crie um novo projeto Java Web com o Netbeans IDE (em caso de dúvidas consulte a quinzena 2). Para trabalhar com o banco de dados MySQL é necessário que em seu projeto seja configurado o driver JDBC do MySQL. Para fazer isso, clique com o botão direto do mouse na pasta bibliotecas de seu projeto na guia projetos do Netbeans e selecione Adicionar biblioteca conforme a figura a seguir. Página4

Na janela Adicionar Biblioteca que surge, selecione Driver JDBC do MySQL conforme mostra a figura a seguir. Página5

Seu projeto, em sua guia de projetos deve estar com sua pasta bibliotecas agora da forma como mostra a figura a seguir. Página6 Vamos agora conectar o projeto ao banco de dados criado anteriormente por você, recuperar os registros dos alunos e exibi-los em uma página web de seu navegador. Para isso, altere o código de seu arquivo index.jsp para o código da imagem a seguir.

Página7 Repare nas linhas 7-11 que são importadas as classes necessárias para trabalhar com bancos de dados em Java (tipicamente dizemos classes JDBC Java Database Connectivity). Na linha 20 é criado um título que aparece na página, dentro da janela do navegador com o tag <h1>, na linha 21 é criado um link para uma futura página que fará a inserção de novos registros em seu banco de dados. Na linha 25 inicia-se um Scriplet que contém os comandos necessários para conexão ao seu banco de dados. A maior parte dos comandos para acesso à bancos de dados podem lançar exceções (erros que quando tratados não fazem o software travar por exemplo, servidor de banco de dados inexistente, nome do banco de dados incorreto, usuário ou senha para acesso ao servidor de bancos de dados incorretos). Por isso na linha 26 é iniciado um comando try (tentar do inglês), na linha 42 em caso de problemas ou exceções, estas exceções serão armazenadas no objeto e, o qual pode ser utilizado para a resolução do problema. Em caso de dúvidas sobre tratamentos de exceções consulte o material da disciplina de Linguagens de Programação II. Para se conectar a um banco de dados em Java, são necessárias 3 operações básicas. São elas

Registrar o driver do banco de dados, esta operações é feita na linha 27 através do método forname do objeto Class. Ao aplicar o método Class.forName e fornecer a String com o caminho para o driver de banco de dados, este ficará disponível para uso na memória do computador e o deixa disponível para ser utilizado pela classe DriverManager. Criar uma conexão, uma conexão (Connection) contém os dados necessários para acesso ao banco de dados. Ela contém dados como endereço do servidor de banco de dados, nome do banco de dados, usuário e senha para acesso. Para uma Connection ser criada, seu dados devem ser informados no método getconnection da classe DriverManager, o qual usuário o driver de banco de dados registrado anteriormente e através dos dados de acesso criará este objeto. Este procedimento é feito na linha 29. A figura a seguir exibe os locais onde você deve colocar o endereço do seu servidor de banco de dados, o nome do banco de dados a ser acessado, o usuário e a senha para acesso. Criar um Statement que é um objeto necessário para executar comandos no banco de dados. Ele é criado por uma Connection e após isso pode interagir com o banco de dados através de comandos SQL. Este procedimento é feito na linha 30. Opcionalmente, caso você faça a busca por registros em seu banco de dados (quando por exemplo utilizando o comando da linguagem SQL select), estes dados são retornados pelo banco de dados em um objeto do tipo ResultSet. Um ResultSet pode ser comparado a uma tabela que contém dados sobre os registros retornados pela consulta SQL. Imagine que após executar um comando SQL na linha 30, fossem retornados do banco de dados 2 registros, o ResultSet seria equivalente à tabela da figura a seguir. Página8 Um cursor deve ser posicionado na linha do ResultSet que se deseja, após posicionar o cursor, o dado da linha pode ser recuperado. Sempre que você faz uma consulta SQL, o ResultSet retornado inicia com o cursor posicionado na linha de títulos da tabela, para

avançar para uma linha com registros, deve-se utilizar um dos métodos abaixo dependendo da situação Método first() last() previous() next() Função Vai para a primeira linha de dados do ResultSet Vai para a última linha de dados do ResultSet Vai para a linha de dados anterior à atual do ResultSet Vai para a próxima linha de dados do ResultSet Após posicionar o cursor adequadamente na linha desejada do ResultSet, você deve recuperar a informação desejada campo a campo através do método gettipo_de_dado, onde TIPO_DE_DADO é um tipo de dados Java, como int, String, double, etc. Por exemplo, para pegar o telefone da aluna Maria, deve-se usar o comando rs.last() para posicionar o cursor na última linha de dados, após isso, para pegar o telefone, use o comando rs.getstring( telefone ) e será retornada uma String com o número de telefone desejado. Nas linhas 22-23 é criada uma tabela para ser mostrada na página com tags HTML. O tag <table> inicia uma nova tabela, o tag <tr> cria uma linha na tabela, por isso a tabela não foi fechada, os tags <th> dividem uma linha em células normalmente utilizadas para títulos das colunas, uma tabela com uma única linha é impressa nas linhas 22-23 (apenas com os títulos das colunas, mas note que o tag <table> não foi finalizado, isso porque nas linhas 33-36 os dados do objeto tipo ResultSet são concatenados a tags <tr> e <td> que geram novas linhas e colunas para a tabela que se encontra ainda sem fechamento. Em cada linha da tabela, são exibidos os dados de um registro do ResultSet recuperado do banco de dados através do comando SQL select da linha 30. Quem garante que o todos os registros sejam exibidos na página é linha 32, onde um laço while é executado enquanto o cursor conseguir avançar nas linhas do ResultSet, este laço se encerra na linha 36. Após o término do laço while, na linha 37, a tabela que se encontra iniciada na linha 22 é finalizada com o tag </table>. Execute seu projeto, o resultado deve ser exibido em seu navegador conforme a figura a seguir. Página9

Página10 Centro Federal de Educação Tecnológica de Minas Gerais