Baixe o app para aproveitar ainda mais
Prévia do material em texto
2019.2 PROFESSORES: HENRIQUE TAVARES EDIBERTO MARIANO PROGRAMAÇÃO II CCT0695 Aula 5 2019.2 Unidade II Bancos de Dados 2 ❑ Middleware ❑ Consulta e manipulação de dados com JDBC 2019.2 Middleware • É o software de computador que fornece serviços para softwares aplicativos além daqueles disponíveis pelo sistema operacional. • Pode ser descrito como "cola de software". 2019.2 Middleware O middleware também pode ser utilizado para processamento distribuído com ações que ocorrem em tempo real em vez de envio e recebimento repetitivo de dados. 2019.2 Utilidade do Middleware Facilitar o desenvolvimento de aplicações, tipicamente as distribuídas, assim como facilitar a integração de sistemas legados ou desenvolvidos de forma não integrada automática. 2019.2 Middleware de Banco de Dados É qualquer conjunto de APIs que facilita a comunicação com um banco de dados, seja de um aplicativo ou entre bancos de dados, usado por desenvolvedores para extrair informações de bancos de dados locais ou remotos. 2019.2 Middleware de Servidor de Aplicativos • API padronizada para acesso • Uma implementação para o modelo de arquitetura • Uma ou mais interfaces de gerenciamento 2019.2 Middleware Orientado a Mensagens • Um cliente pode enviar e receber mensagens de forma assíncrona de qualquer outro cliente, conectados a um agente especial que fornece facilidades para criar, enviar, receber e ler mensagens. 2019.2 Middleware Web • Dono do Recurso (Resource Owner): uma entidade capaz de conceder acesso à um recurso protegido (pode ser o usuário final). • Servidor do Recurso (Resource Server): o servidor que hospeda os recursos protegidos. O acesso a ele é feito através de tokens. • Cliente (Client): uma aplicação requisitando recursos protegidos, através da autorização do dono. • Servidor de Autorização (Authorization Server): servidor que emite tokens de acesso ao cliente, depois de sua autenticação e obtenção de autorização. 2019.2 Middleware Web - Exemplo 2019.2 Monitores de Processamento de Transações • comunicação entre plataformas e aplicações • uso de API bem definida e aberta • uso de protocolos bem definidos e abertos • ser utilizadas em múltiplas plataformas • manter separação de camadas para segurança e portabilidade • recuperar dados e consolidar a partir de múltiplas fontes • fornecer acesso a tecnologias distintas 2019.2 O Middleware pode abranger uma variedade de tipos de Software • Interface de programação de aplicações (API) • Servidor de aplicações • Integração de aplicações • Integração de dados • Processamento de transações (TP) • Chamada de procedimento remoto (RPC) 2019.2 API JDBC A biblioteca JDBC define o Middleware Java para acesso a qualquer tipo de banco de dados, permitindo o manuseio das informações com um pequeno conjunto de classes, pertencentes ao pacote: java.sql.* 2019.2 JDBC Java Database Connectivity • É um conjunto de classes e interfaces (API) escritas em Java que fazem o envio de instruções SQL para qualquer banco de dados relacional • API de baixo nível e base para API’s de alto nível • Amplia o que você pode fazer com Java • Possibilita o uso de Bancos de Dados já instalados 2019.2 JDBC tipo 1: Ponte JDBC-ODBC Esta ponte é normalmente usada quando não há um driver puro-Java (tipo 4) para determinado banco de dados, pois seu uso é desencorajado devido à dependência de plataforma. 2019.2 JDBC Tipo 2: Driver API-Nativo Traduz as chamadas JDBC para as chamadas da API cliente do banco de dados usado. Como a Ponte JDBC-ODBC, pode precisar de software extra instalado na máquina cliente. 2019.2 JDBC tipo 3: Puro Java Converte as chamadas JDBC diretamente no protocolo do banco de dados utilizado. Implementado em Java, normalmente é independente de plataforma e escrito pelos próprios desenvolvedores. É o tipo mais recomendado para ser usado. 2019.2 JDBC Tipo 4: Protocolo de Rede Traduz a chamada JDBC para um protocolo de rede independente do banco de dados utilizado, que é traduzido para o protocolo do banco de dados por um servidor. 2019.2 Java DB (Derby) 2019.2 Java DB (Derby) NetBeans IDE Versão Java EE 7.2, 7.3, 7.4, 8.0 JDK (Java Development Kit) Versão 7 ou 8 Java DB Versão 10.4.x, 10.5.x • O Java DB é instalado quando o JDK 7 ou JDK 8 é instalado (com exceção do Mac OS X) • Se estiver usando Mac OS X é possível fazer o download e instalar o Java DB manualmente ou usar o Java DB que é instalado pela versão do Java EE do instalador do NetBeans IDE. 2019.2 Configurando o Banco de Dados Se você tem o GlassFish Server Enterprise registrado na instalação NetBeans IDE, o Java DB já estará registrado. Portanto, é possível pular para Iniciando o Servidor. Se fizer download do GlassFish Server separadamente e necessitar de ajuda ao registrar no NetBeans IDE, consulte Registrando uma Instância do GlassFish Server no Conteúdo de Ajuda IDE (F1). Se você tiver submetido o Java DB a download, siga as etapas a seguir. 1. Execute o arquivo de autoextração. Uma pasta denominada 'javadb' será criada no mesmo local do arquivo. Se você tiver apenas submetido o Java DB a download e desejar que o servidor de banco de dados fique em um local diferente de onde ele foi extraído, deverá realocá-lo agora. 2. No sistema, crie um novo diretório para ser utilizado como diretório home para as instâncias individuais do servidor de banco de dados. Por exemplo, é possível criar esta pasta no diretório-raiz Java DB (javadb) ou em qualquer outra localização. Antes de prosseguir, é importante compreender os componentes encontrados no diretório raiz do Java DB: O subdiretório demo contém os programas de demonstração. O subdiretório bin contém os scripts para executar utilitários e configurar o ambiente. O subdiretório javadoc contém a documentação da API que foi gerada de comentários de código-fonte. O subdiretório docs contém a documentação do Java DB. O subdiretório lib contém os arquivos jar do Java DB. 2019.2 Conexão JDBC com o Banco de Dados • Conexão do banco de dados (MySQL) String url = "jdbc:mysql://localhost:3306/Banco01“; String user = "ediberto“; String password = "ediberto"; • Conexão do banco de dados derby (Java DB) DriverManager.getConnection( "jdbc:derby://localhost:1527/Banco01","ediberto", "ediberto“ ); 2019.2 Criar Novo Projeto NetBeans Arquivo > Novo Projeto... > Escolher Projeto... 2019.2 Criar Novo Projeto NetBeans Arquivo > Novo Projeto... > 1. Escolher Projeto... 2. Nome e Localização... 2019.2 Projeto “Biblioteca” com um “controlador” criado 2019.2 Registrando o Banco de Dados no NetBeans IDE Na janela Serviços, clique com o botão direito do mouse no nó do Banco de Dados Java DB e escolha Propriedades para abrir a caixa de diálogo das Definições do Java DB 2019.2 Registrando o Banco de Dados no NetBeans IDE No campo de texto Instalação de Java DB, insira o caminho para o diretório-raiz de Java DB (javadb) especificado na etapa anterior 2019.2 Registrando o Banco de Dados no NetBeans IDE • Para a Localização do Banco de Dados, use o local default se um local já foi fornecido. Clique em OK • Por exemplo, a localização default pode parecer com C:\Documents and Settings\username\.netbeans-derby em um computador Windows. 2019.2 Iniciando o Servidor Na janela Serviços, clique com o botãodireito do mouse no nó Java DB e escolha Iniciar Servidor. Observe a seguinte saída na janela de Saída, indicando que o servidor foi iniciado: 2019.2 Saída – Processo do Banco de Dados JavaDB Wed Oct 16 10:00:42 BRT 2019 : DRDA_SecurityInstalled.I Wed Oct 16 10:00:42 BRT 2019 : Apache Derby Servidor de Rede - 10.10.2.0 - (1582446) iniciado e pronto para aceitar conexões na porta 1527 em {3} 2019.2 Criando um Banco de Dados Clique com o botão direito do mouse no nó do Java DB e escolha Criar Banco de Dados para abrir a caixa de diálogo de criação do Banco de Dados do Java DB. 2019.2 Criando um Banco de Dados 2019.2 Banco de Dados Criado 2019.2 Estabelecendo Conexão com o Banco de Dados Na janela Serviços do IDE você pode realizar as seguintes tarefas comuns em estruturas de banco de dados: • criação, exclusão, modificação de tabelas • preenchimento de tabelas com dados • exibição de dados tabulares • execução de consultas e instruções SQL 2019.2 Usando a Caixa de Diálogo Criar Tabela 1 - Expanda o nó de conexão BD de Contato e observe que existem vários subnós do esquema. O esquema app é o único esquema que se aplica a este tutorial. Clique com o botão direito do mouse no nó APP e escolha Definir como Esquema Default. 2019.2 Usando a Caixa de Diálogo Criar Tabela 2 - Expanda o nó APP e observe que existem três subpastas: Tabelas, Views e Procedimentos. 2019.2 Usando a Caixa de Diálogo Criar Tabela 3 - Clique com o botão direito no nó Tabelas e escolha Criar Tabela para abrir a caixa de diálogo Criar Tabela. 2019.2 Usando a Caixa de Diálogo Criar Tabela 4 - No campo de texto Nome da Tabela, digite AUTORES. 2019.2 Adicionar Coluna Chave Índice Nulo Exclusiva Nome da coluna Tipo de dados Tamanho [marcada] [marcada] [marcada] id INTEIRO 0 [marcada] NOME VARCHAR 20 [marcada] SOBRENOME VARCHAR 20 2019.2 Adicionar Coluna Chave Índice Nulo Exclusiva Nome da coluna Tipo de dados Tamanho [marcada] [marcada] [marcada] id INTEIRO 0 [marcada] NOME VARCHAR 20 [marcada] SOBRENOME VARCHAR 20 2019.2 Usando o Editor SQL • Na janela Serviço, clique com o botão direito no nó de conexão BD de AUTORES ou no nó Tabelas embaixo e escolha o Comando Executar. • Uma tela em branco é aberta no Editor SQL na janela principal. 2019.2 Insira a seguinte consulta no Editor SQL: CREATE TABLE “EDITORES" ( "ID" INTEGER not null primary key, "NOME" VARCHAR(30), "EMAIL" VARCHAR(60) ); 2019.2 Adicionando Dados na Tabela INSERT INTO EDITORES VALUES(1, 'EDITORA ÉRICA' ,'contato@erica.com.br'); INSERT INTO EDITORES VALUES(2, 'NOVATEC EDITORA' ,'contato@novatec.com.br'); INSERT INTO EDITORES VALUES(3, 'EDITORA SARAIVA' ,'contato@saraiva.com.br'); INSERT INTO EDITORES VALUES(4, 'EDITORA VIENA' ,'contato@viena.com.br'); INSERT INTO EDITORES VALUES(5, 'EDITORA CIÊNCIA MODERNA','contato@cm.com.br'); INSERT INTO EDITORES VALUES(6, 'EDITORA SENAC' ,'contato@senac.com.br'); INSERT INTO EDITORES VALUES(7, 'EDITORA FTD' ,'contato@ftd.com.br'); 2019.2 DAO – Data Access Object 2019.2 Exemplo DAO – Data Access Object 2019.2 Criando Conexão com JDBC 2019.2 Classe “AutorDAO”: SQL INSERT 2019.2 Classe “AutorDAO”: SQL UPDATE 2019.2 Classe “AutorDAO”: SQL DELETE 2019.2 Classe “AutorDAO”: consultaUmAutor() 2019.2 Classe “AutorDAO”: consultaListaAutores() 2019.2 Exercício 1 Criar as classes de negócio acima…. 2019.2 Exercício 2 Criar as tabelas: EDITORES, REVISTAS, LIVROS, ARTIGOS e ASSUNTOS 2019.2 Exercício 3 Criar as classes DAO para: EDITORES, REVISTAS, LIVROS, ARTIGOS e ASSUNTOS 2019.2 PROFESSORES: HENRIQUE TAVARES EDIBERTO MARIANO PROGRAMAÇÃO II CCT0695 Aula 5
Compartilhar