Figura 1. A Classe Java

Documentos relacionados
Aula 1 Acesso a Banco de Dados

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

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

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

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

Leonardo Gresta Paulino Murta

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

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

Programação com Acesso a Banco de Dados

Orientação a Objetos

Java com Banco de Dados Posgree

JDBC Java Database Connectivity

Desenvolvimento Web TCC Turma A-1

Aula 03 - Projeto Java Web

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

Java Beans e Servlets

JAVA COM BANCO DE DADOS PROFESSORA DANIELA PIRES

Integrando Java com Banco de Dados

Banco de Dados. Sérgio Luiz Ruivace Cerqueira

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

SISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária

Capítulo 04: Persistência com SQLite

Especificação do 3º Trabalho

Programação Orientada a Objetos JDBC Java Database Connectivity

Acessando um Banco de Dados

Android e Bancos de Dados

Acessando bancos de dados com o JDBC

Prática Sobre Servlets e JSP

Persistência de Classes em Tabelas de Banco de Dados

Desenvolvimento de Aplicações para Internet Aula 8

JAVA JDBC Java Database Connectivity

1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF)

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

Como funcionam os comandos de SQL no Logic Basic Por Alan Oliveira

FCT Faculdade de Ciências e Tecnologia Serviço Técnico de Informática STI SGCD Sistema Gerenciador de Conteúdos Dinâmicos

Procedimentos de Implantação ireport x Protheus

Banco de Dados. Prof. Leonardo Barreto Campos 1

Programação Orientada a Objetos (DPADF 0063)

Desenvolvimento de Aplicações para Internet Aula 9

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

MANUAL - BIKESYS. Versão 1.0 Beta. Março 2013

UFG - Instituto de Informática

Capítulo 1. Acesso a Banco de Dados com JDBC (Java Database Connectivity) e o Padrão de Projeto DAO (Data Access Object)

Prevayler. Perola. André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki

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

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

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

ÍNDICE 1 INTRODUÇÃO ACESSO ABERTURA DE PROTOCOLO CONSULTA DE PROTOCOLO PROTOCOLO PENDENTE CONFIRMAÇÃO DE RECEBIMENTO.

UML Aspectos de projetos em Diagramas de classes

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

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.

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

Boletim Técnico. : 05/08/2013 Data da revisão : 16/10/13 Banco(s) de Dados

Desenvolvendo Aplicações Web com NetBeans

1.2) Na tela seguinte, o primeiro item a ser selecionado é o Unidade Acumuladora1.

MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET

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

Curso da Ciência da Computação Disciplina Desenvolvimento de Aplicações Web

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

Criando formulário de pesquisa vinculando caixa de texto e caixa de listagem

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

Acesso a Bancos de Dados em Java (JDBC)

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS

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

Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse

Introdução a relatórios Crosstab com ireport/jasperreports

1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2.

QUESTÃO 01 - DIAGRAMA DE SEQUENCIA (CONCEITOS)

Orientação a Objetos

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

Construtor de sites SoftPixel GUIA RÁPIDO - 1 -

18/04/2006 Micropagamento F2b Web Services Web rev 00

Sistema de Gerenciamento Remoto

Manual Captura S_Line

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

Para funcionamento do Netz, alguns programas devem ser instalados e alguns procedimentos devem ser seguidos. São eles:

CRIANDO, ALTERADO E EXCLUINDO TABELAS, INSERINDO, SELECIONANDO, ALTERANDO E EXCLUINDO DADOS

Universidade Federal Rural de Pernambuco. Bacharelado em Sistemas de Informação. Disciplina: Análise e Projeto de Sistemas de Informação

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

INTEGRAÇÃO DE TÉCNICAS DE SISTEMAS DISTRIBUÍDOS APLICADA AO DESENVOLVIMENTO DE UM AMBIENTE PARA O JOGO DE XADREZ

GUIA INTEGRA SERVICES E STATUS MONITOR

Acesso à Dados ZEOS x Delphi. Professor Anderson

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

Orientação a Objetos

Revisando sintaxes SQL e criando programa de pesquisa. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

UNIVERSIDADE FEDERAL DO AMAPÁ NÚCLEO DE TECNOLOGIA DA INFORMAÇÃO. Manual de Avaliação de Desempenho Cadastro

JDBC Acessando Banco de Dados

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

PROGRAMAÇÃO SERVIDOR PADRÕES MVC E DAO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano

Serviço Público Federal Universidade Federal do Pará - UFPA Centro de Tecnologia da Informação e Comunicação - CTIC S I E

SERVICE DESK MANAGER SDM. Manual do Sistema - DPOI

Factory Method. Edeyson Andrade Gomes

Manual do Contribuidor. Portal de Internet. Projeto: Novo Portal de internet

Treinamento sobre SQL

Curso de Capacitação em Gerenciador de Conteúdo PLONE

DIRETRIZES DE USO DA MATRIZ DE SISTEMATIZAÇÃO DE INFORMAÇÕES

Transcrição:

Conexã o com MySQL Connection Factory Para criar as conexões com o banco de dados será utilizado um padrão chamado Factory, onde através dele se terá uma única classe que proverá uma fábrica de conexão para a aplicação. Para implementá-la, primeiramente, cria-se uma nova classe java, que deve ser inserida em um novo (ou já existente) pacote, chamado br.com.aula.util (ver Figura 1). Figura 1. A Classe Java Esta classe será responsável por abrir e fechar a conexão com o banco de dados. Ela vai possuir um único atributo, do tipo Connection, do pacote Java.sql. Driver JDBC Para fazer a conexão, é necessário adicionar a biblioteca Driver JDBC do MySQL ao projeto, conforme Figura 2.

Figura 2. Driver JDBC MySQL Os métodos A classe ConnectionFactory possuirá dois métodos, um para abrir e outro para fechar a conexão com a base de dados, cujo serão chamados de getconnection() e closeconnection(). Abrir Conexão A abertura da conexão será feita pelo método getconnection(), que não recebe nada como parâmetro e retorna um objeto Connection. Para abrir a conexão será utilizado o método getconnection() do DriverManager, que recebe a URL, usuário e senha do banco. A implementação do método pode ser vista na Figura 3, onde se pode notar que a abertura da conexão ficou dentro de um try-catch, onde podem ser tratados os problemas de conexão.

Figura 3. Abertura de Conexão Fechar Conexão O fechamento da conexão se dará pelo método closeconnection(), cujo receberá um objeto Connection e o fechará. Feito isto, se tem a primeira versão da ConnectionFactory. Na sequencia, o método closeconnection() pode também fechar o PreparedStatement e o ResultSet, que serão vistos na sequencia. DAO O padrão Data Access Objects (DAO) tem por objetivo isolar a camada de persistência. Sendo assim não se mistura o código da aplicação com o código de acesso ao banco de dados, facilitando a manutenção e o reuso. Servlets, beans e JSPs ficam responsáveis pela lógica de apresentação e de negócios, já o DAO contém código que isola detalhes de acesso ao banco. Geralmente, tem-se um DAO para cada objeto do domínio do sistema (Usuários, Clientes, Funcionário, Livros, Autores, etc.). Cada DAO deve possuir uma interface, que especifica os métodos de manipulação de dados. Para exemplificar, será criado o DAO para uma classe Usuario. Inicialmente deve-se criar a interface DAO do usuário, cuja será chamada de UsuarioDAO, que possuirá os métodos abstratos a serem implementados pela classe que implementar UsuarioDAO.

UsuarioDAO Crie uma Interface Java (conforme figura 4). Na janela seguinte, é atribuído o nome UsuarioDAO à classe criada, e esta é inserida em um novo pacote, chamado br.com.aula.dao (ver Figura 5). Figura 4. Interface DAO Figura 5. Interface UsuarioDAO Na interface criada, serão inseridos os métodos a serem implementados pelas classes que implementarão o UsuarioDAO. Estes métodos serão: Inserção, atualização, exclusão, listagem e busca de usuário. Considerando estes métodos, se terá uma classe semelhante à vista na Figura 6.

Figura 6. Métodos UsuarioDAO JDBCusuarioDAO Agora que já se tem a Interface DAO, será criada a classe que implementará os seus métodos, cuja será chamada de JDBCusuarioDAO. Para isso, crie uma nova classe java, dentro do pacote br.com.aula.dao, e chame-a de JDBCusuarioDAO e a faça implementar a classe UsuarioDAO. Feito isto, deve-se ter um código semelhante ao da Figura 7. Figura 7. JDBCusuarioDAO

Agora, é preciso implementar a classe de forma a realizar as ações propostas pelos métodos no banco de dados. Método construtor O método construtor irá abrir uma conexão com o banco de dados utilizando a Fábrica de Conexões criada anteriormente. Método insereusuario() O método de inserção de usuário precisa receber um UsuarioBean, e inseri-lo no banco de dados. A captação dos dados do bean é feita através do acesso aos métodos get da classe, como pode ser visto entre as linhas 35 e 41 da Figura 8. Logo a seguir, é criada uma variável chamada sql que recebe o comando para inserção dos dados na tabela usuário. Note que, após o VALUES, onde seriam passados os valores a serem inseridos no banco de dados, apenas pontos de interrogação são colocados. Isto porque se irá trabalhar com um objeto do tipo PreparedStatement para setar os valores das?. Observe as linhas entre 49 e 57 da Figura 8, onde na linha 49, ps (o PreparedStatement) recebe a instrução sql parametrizada e, nas linhas seguintes é setado o valor que cada uma das? irá receber. Feito isto, basta executar a instrução no banco, o que é feito através do método executeupdate() do objeto ps, conforme linha 59 da Figura 8. Observe que, ao final do método é feita uma chamada ao método closeconnection() da fábrica de conexões, isso para evitar o excesso de conexões abertas no banco de dados.

Figura 8. Método insereusuario Método listausuario() De acordo com a interface criada, o método listausuario() não recebe argumento e deve retornar uma lista de UsuarioBean. O método pode ser observado na Figura 9, onde pode-se notar algumas novidades com relação ao método de inserção, tais como, a utilização do objeto ResultSet.

Este método é utilizado para receber os dados da Query SQL, onde agora não é utilizado o método executeupdate() como anteriormente, e sim o método executequery(), cujo retorna um objeto do tipo Resultset. O objeto retornado é lido e inserido UsuarioBean, que em seguida é inserido em um array de UsuarioBean, que ao final do método é retornado. Observe que o objeto ResultSet possui diferentes métodos para tratar tipos de dados diferentes. Neste caso foi utilizado apenas o getstring(), mas poderia ser utilizados métodos como: getint(), getboolean(), getdate(), gettime() entre muitos outros. Dica: Converter texto em Data Figura 9. Método listausuario() //Formatando a data SimpleDateFormat sd = new SimpleDateFormat("dd/MM/yyyy"); // Data atual Calendar data = Calendar.getInstance(); //Printando out.print(sd.format(data.gettime()));

Atividãde Faça com que o seu Servlet utilize o classe DAO criada para inserir usuários no banco de dados. Altere os métodos da ConnectionFactory para estáticos. Cria uma nova página de listagem de usuários, que utilizará o método de listagem para listar todos usuários cadastrados no sistema. Crie todas suas interfaces DAO.