Classes de Entidades Persistentes JDB

Save this PDF as:
 WORD  PNG  TXT  JPG

Tamanho: px
Começar a partir da página:

Download "Classes de Entidades Persistentes JDB"

Transcrição

1 Classes de Entidades Persistentes JDB Brasil, Natal-RN, 07 de setembro de 2011 Welbson Siqueira Costa Nota de Retificação: em 11/12/2011 a Listagem 3 desse tutorial sofreu uma pequena alteração em seu método main para se prevenir contra drivers JDBC inseguros em relação a threads. É importante salientar que o driver JDBC MySQL não apresentou problemas com o código originalmente escrito na publicação do artigo.

2 Resumo No emprego do paradigma da programação OO (Orientada a Objetos) para concepção de sistemas informatizados, entidades do mundo real são representadas por classes. Em muitos casos, essas classes deverão persistir seus objetos em meios de armazenamento não voláteis. Nesse sentido, tais classes podem ser denominadas de classes de entidades persistentes. Trabalhar com linguagem de programação OO e ter a necessidade de persistir objetos em banco de dados relacional (não orientado a objetos) implica na obrigação de mapear estruturas de classes persistentes para tabelas. Esse mapeamento também interfere na programação do sistema, já que deverão ser codificadas estruturas responsáveis pela garantia da persistência dos objetos das classes em tabelas de banco de dados. Muitos esforços e dificuldades estão relacionados a essa atividade. Por isso, o Framework JDB idealizou o conceito de Classe de Entidade Persistente JDB, que se materializa na forma de uma classe de entidade simples e especialmente codificada, a qual tem a capacidade de persistir objetos de seu próprio tipo em sistemas de bancos de dados relacionais, sem maiores esforços de programação.

3 A abstração é um ato mental largamente utilizado pelos seres humanos na realização de projetos. Não somente bastante utilizado, mas também muito importante, o exercício da abstração consiste em dar atenção àquilo que realmente é significante, desconsiderando, pelo menos em determinado momento, tudo que não está diretamente relacionado ao assunto que se está analisando ou trabalhando. Na análise e modelagem de sistemas de software a importância da abstração também está presente. Nesse sentido, os analistas de sistemas ou desenvolvedores de software voltam suas atenções para entidades do mundo real que estão diretamente relacionadas ao domínio do negócio que se deseja informatizar. No paradigma da programação OO (Orientada a Objetos) tais entidades são as classes. Por exemplo, na análise e modelagem de um sistema de vendas, as entidades: produto, cliente, fornecedor e venda seriam fortes candidatas a se tornarem classes de software. Uma característica muito importante relacionada às classes de software é a necessidade que elas podem ter de persistir seus objetos, ou seja, de armazená-los em meios não voláteis que permitam posterior recuperação, mesmo que o sistema tenha sido desligado. Retornando ao sistema de vendas, seria bastante provável que as possíveis classes citadas anteriormente necessitassem possuir a característica da persistência. Sendo isso confirmado, elas poderão ser denominadas de Classes de Entidades Persistentes. A persistência dos objetos pode ser realizada utilizando-se os mais diversos sistemas de armazenamento disponíveis. No nível tecnológico atual, o meio comumente utilizado são os sistemas de bancos de dados; mais especificamente, os sistemas de bancos de dados relacionais e objetorelacionais 1. Como esses sistemas não representam aspectos do mundo real através de classes, faz-se necessário mapear as estruturas das classes de software para modelos de tabelas (uma atividade denominada de mapeamento objeto-relacional). Tal necessidade ocorre porque os bancos de dados relacionais e objeto-relacionais armazenam seus dados em formatos tabulares. Dessa maneira, cada uma das Classes de Entidades Persistentes poderá ser mapeada para uma tabela do modelo relacional. Em (BEZERRA, 2007) há um 1 Os sistemas de banco de dados objeto-relacionais são sistemas relacionais dotados de algumas características da orientação a objetos.

4 capítulo inteiro que demonstra as várias maneiras de realização do mapeamento objeto-relacional. O mapeamento para tabelas compreende a visão dos dados. Na visão do programa, o sistema deverá lidar com aspectos de codificação específicos relativos à persistência dos dados. Com isso, esforços de programação, que não estão relacionados ao domínio que se está informatizando, deverão ser despendidos para garantia da persistência dos dados. Há muitas estratégias de se lidar com esses aspectos. Seja qual for a estratégia adotada, o desenvolvedor terá, basicamente, duas opções: 1) deverá trabalhar diretamente com a API JDBC; ou, 2) deverá fazer uso de algum subsistema de persistência. Nas seções 1 e 2 são apresentadas duas estratégias de utilização direta da API JDBC; na seção 3 é apresentado o conceito de CEP JDB (Classe de Entidade Persistente JDB) para garantia da persistência de dados de forma mais produtiva; na seção 4 é demonstrado como trabalhar com CEP JDB. 1. Classe de Entidade com Métodos para Persistência Nessa estratégia, o programador dota cada classe de entidade com métodos responsáveis pela persistência de seus próprios objetos. Por exemplo, considerando a classe Produto (Figura 1). É possível observar que ela possui os métodos inserir, salvar, excluir e consultar, os quais servem apenas para persistência dos objetos da própria classe. O código responsável pela implementação, no interior de cada método, lida diretamente com a API JDBC. É nesse ponto onde os desenvolvedores têm que voltar suas atenções para aspectos que não fazem parte do domínio do negócio que estão informatizando. É também aqui o local onde se desperdiça recursos (tempo, dinheiro, força de trabalho, entre outros).

5 Figura 1 Classe de Entidade Persistente Produto. Além do desperdício de recursos e do desvio das atenções dos reais objetivos, cada classe escrita dessa maneira torna-se uma classe pouco coesa, ou seja, ela se responsabiliza por operações diversas. Levando em consideração que o software a ser desenvolvido o poderá possuir dezenas de classes de entidades persistentes, as dificuldades identificadas se multiplicarão. Fator ainda mais importante está relacionado à manutenabilidade, a qual também se apresentará comprometida em virtude do aumento da complexidade de cada classe envolvida no sistema. Para se ter uma pequena idéia das dificuldades, a simples migração para sistema de banco de dados diferente do originalmente utilizado poderá requerer adequações em muitos dos métodos de persistência stência de cada uma das classes, já que o código responsável por persistir os dados está espalhado pelas várias classes do software. 2. Padrão DAO (Data Access Object) O padrão DAO acarreta maior complexidade ao software desenvolvido, no entanto dota o sistema de características que facilitam manutenções futuras. Ele garante que cada classe envolvida seja responsável por operações que estão relacionadas apenas à sua atividade principal. Por exemplo, observando a Figura 2, é possível perceber que a classe Produto só possui os métodos

6 get e set para manipulação de seus atributos, ordem, nome, e valor. Dessa maneira diz-se que essa classe de entidade é altamente coesa, pois se responsabiliza apenas por sua atividade fim, que é manter uma representação de objetos do tipo Produto. As operações de persistência ficam separadas na classe DAOProduto,, a qual mantém um relacionamento de dependência com a classe de entidade persistente Produto.. O relacionamento de dependência ocorre porque DAOProduto tem métodos que recebem objetos do tipo Produto como parâmetro ou retornam objetos Produto.. Não é difícil entender que DAOProduto precisa conhecer Produto para persistir seus objetos. A interface IDAOProduto serve apenas para garantir um acoplamento abstrato entre a Aplicação e a classe DAOProduto. Com isso, a Aplicação lida apenas com os métodos da interface, sem necessidade de conhecer os detalhes da classe DAOProduto. Em (BEZERRA, 2007) é possível obter maiores explicações sobre acoplamento abstrato. Para saber mais sobre o padrão DAO veja (ORACLE, 2010). Figura 2 Padrão DAO. Conforme já dito, esse padrão tem a desvantagem de aumentar a complexidade do sistema de software a ser desenvolvido, contudo aumenta sua flexibilidade e manutenabilidade, pois o código responsável pela

7 persistência concentra-se nas classes DAO. Ele também é bastante utilizado quando um sistema de computador necessita armazenar seus dados em diferentes sistemas de persistência 2. Essa característica é denominada de interoperabilidade. Desse modo, cada classe de entidade persistente deverá está associada a uma classe DAO específica para determinado sistema de persistência. Assim, a classe DAO será responsável por persistir dados da classe de entidade em sistema de persistência específico. 3. Classe de Entidade Persistente JDB O JDB traz uma grande facilidade para se trabalhar com classes de entidades persistentes e bancos de dados relacionais. Uma CEP JDB (Classe de Entidade Persistente JDB) é definida como uma classe de entidade que corresponderá a uma tabela do modelo relacional. Ela deverá herdar da classe AbstractEntity, reescrever um de seu métodos construtores e ter o mesmo nome da tabela do banco de dados que representa. A Figura 3 apresenta a hierarquia de herança das CEP JDB. É possível observar que a classe AbstractEntity herda de JDBQuery, portanto ela é uma JDBQuery; sendo assim, possui capacidade de lidar com a persistência de dados em sistemas relacionais e objeto-relacionais. AbstractEntity possui três construtores, um método get e outro set: 1) AbstractEntity(): é o construtor padrão que configura a consulta SQL da superclasse JDBQuery com valor padrão. A consulta padrão retorna todos os registros da tabela de mesmo nome que a classe filha de AbstractEntity; 2) AbstractEntity(jdbconnection : JDBConnection): também configura a consulta SQL do JDBQuery com o valor padrão e ainda permite que seja definido o JDBConnection para conexão com o banco de dados; 2 Exemplos de sistemas de persistência são: sistemas de bancos de dados relacionais, objeto-relacionais ou orientados a objetos; arquivos texto; arquivos XML; entre outros.

8 3) AbstractEntity(jdbconnection : JDBConnection, SQL : String): permite que o programador defina o JDBConnection e a consulta SQL; 4) getfield(fieldname : String) : Object: retorna o valor armazenado na coluna, especificada no parâmetro fieldname, da tabela definida na consulta SQL. Retorna o valor como um Object de Java, portanto o programador deverá fazer uma coerção desse valor recebido para o tipo apropriado; 5) setfield(fieldname : String, value : Object): configura a coluna, especificada no parâmetro fieldname, da tabela definida na consulta SQL, com o valor especificado no parâmetro value. Figura 3 Estrutura de herança das CEP JDB. Uma vez que tenha herdado da classe AbstractEntity e reescrito pelo menos um de seus construtores, a classe de entidade deverá apenas implementar os métodos get e set para cada coluna da tabela que ela representa. A próxima seção demonstra como fazer isso. 4. Exemplo de Aplicação de CEP JDB Nessa seção é implementada uma simples aplicação para demonstração do uso de CEP JDB. O banco de dados do programa é armazenado no SGBD

9 (Sistema Gerenciados de Bancos de Dados) 3 MySQL (MYSQL, 2010). A compilação 4 e execução do programa ocorrem no SO (Sistema Operacional) Windows 7. O programa desenvolvido será armazenado no seguinte diretório: C:\cep_produto\ No interior desse diretório o leitor deverá criar um subdiretório denominado de lib, o qual deverá conter o driver JDBC de conexão com o banco de dados MySQL, disponível no arquivo mysql-connector-java bin.jar (caso deseje, o leitor poderá baixar um driver JDBC MySQL mais atual). O diretório lib também deverá conter o Framework JDB, disponível no arquivo JDB.jar (Veja a Figura 7). Figura 4 Classe de Entidade Persistente Produto. Considerando que a classe de entidade persistente Produto (Figura 4) tem a necessidade de armazenar seus objetos em um sistema de banco de dados relacional; ela deverá ser mapeada para uma tabela desse banco de dados. A Figura 5 apresenta o desenho da tabela produto. A Listagem 1 mostra o código SQL necessário para criar o banco de dados dbproduto e a tabela produto no SGBD MySQL. 3 Deve-se entender SGBD como um sinônimo para Sistema de Banco de Dados. 4 Compilar um programa Java consiste em gerar seus bytecodes.

10 Figura 5 Tabela produto correspondente a classe Produto. 5 1 CREATE DATABASE dbproduto; 2 3 CREATE TABLE dbproduto.produto ( 4 id int(11) NOT NULL AUTO_INCREMENT, 5 ordem int(11) NOT NULL, 6 nome varchar(40) NOT NULL, 7 valor double NOT NULL, 8 PRIMARY KEY (id) 9 ); Listagem 1 Código SQL para criação do banco de dados. Uma vez que a tabela produto tenha sido criada, faz-se necessário codificar a CEP JDB Produto, conforme código da Listagem 2. Essa classe deverá ser escrita em um arquivo texto, sem formatação, denominado de Produto.java e, conforme demonstrado na Figura 7, deverá ser armazenada no seguinte caminho de diretório: C:\cep_produto\entity\Produto.java Na Listagem 2 observa-se que apenas um construtor de AbstractEntity foi reescrito e que há métodos get e set para cada um dos atributos da classe Produto (Figura 4) ou colunas da tabela produto (Figura 5). Percebe-se que não é necessário definir os atributos. Os métodos get fazem uso do método getfield da superclasse AbstractEntity, o qual retorna um Object contendo o valor desejado. Por isso há a coerção para o tipo correspondente, por exemplo, na linha 13, return (Integer) super.getfield("id"); 5 Figura gerada através do programa MySQL Workbench obtido em (MYSQL, 2010).

11 há uma coerção para o tipo Integer, já que a coluna id da tabela produto é do tipo Integer. Os métodos set fazem o uso do método setfield herdado de AbstractEntity, o qual deve receber um objeto de tipo correspondente à coluna que se deseja configurar. Como pode ser visto na linha 17, super.setfield("id", id); o primeiro parâmetro, id, refere-se à coluna id da tabela produto, o segundo parâmetro é o valor que será configurado em id, o qual deverá ser do tipo Integer. 1 package entity; 2 3 import lib.jdb.connection.jdbconnection; 4 import lib.jdb.persistence.abstractentity; 5 6 public class Produto extends AbstractEntity 7 { 8 public Produto(JDBConnection jdbconnection, String SQL){ 9 super(jdbconnection, SQL); 10 } public Integer getid() { 13 return (Integer) super.getfield("id"); 14 } public void setid(integer id) { 17 super.setfield("id", id); 18 } public Integer getordem() { 21 return (Integer) super.getfield("ordem"); 22 } public void setordem(integer ordem) { 25 super.setfield("ordem", ordem); 26 } public String getnome() { 29 return (String) super.getfield("nome"); 30 } public void setnome(string nome) { 33 super.setfield("nome", nome); 34 } public Double getvalor() { 37 return (Double) super.getfield("valor"); 38 } 39

12 40 public void setvalor(double valor) { 41 super.setfield("valor", valor); 42 } 43 } Listagem 2 - Codificação da CEP JDB Produto. A Listagem 3 apresenta o código da classe TesteProduto.java, qual corresponde ao programa que faz uso da CEP JDB Produto. Essa classe deverá ser escrita em um arquivo texto, sem formatação e, conforme demonstrado na Figura 7, deverá ser armazenada no seguinte caminho de diretório: C:\cep_produto\gui\TesteProduto.java O programa TesteProduto é bastante simples, mas demonstra operações de inserção, alteração, exclusão e consulta realizadas através de uma CEP JDB. É facilmente perceptível que o código responsável por realizar tais operações torna-se muito mais agradável no contexto da programação OO, pois o programador passa a interagir com um objeto coleção e não com tabelas de um banco de dados relacional. É isso que uma CEP JDB proporciona, ela é uma coleção de objetos do seu tipo, que estão sendo armazenados em um SGBD relacional sem maiores esforços de programação. 1 package gui; 2 3 import lib.jdb.connection.jdbconnection; 4 import entity.produto; 5 6 public class TesteProduto { 7 8 private JDBConnection jdbconnection = null; 9 private Produto produto = null; 10 private Integer lastordem = 0; 11 private Integer ordem; 12 private String nome; 13 private Double valor; public TesteProduto() { // Configura a conexao com o banco de dados. 18 jdbconnection = new JDBConnection(); 19 jdbconnection.setdriver("com.mysql.jdbc.driver"); 20 jdbconnection.seturl("jdbc:mysql:// /dbproduto"); 21 jdbconnection.setusername("root"); 22 jdbconnection.setpassword("rootjdb"); 23 jdbconnection.connectdb(); 24

13 25 // Cria o objeto da Classe de Entidade Persistente produto. 26 produto = new Produto(jDBConnection, 27 "SELECT * FROM produto ORDER BY ordem"); 28 produto.setvisiblefields("nome ordem valor"); // Configura a lastordem. 31 setlastordem(); System.out.println("\n\nInsere dois registros:\n"); 34 add(); 35 list(); System.out.println("\n\nAltera o ultimo registro:\n"); 38 edit(); 39 list(); System.out.println("\n\nExclui o penultimo registro:\n"); 42 delete(); 43 list(); 44 } private void setlastordem() { 47 if (produto.getqueryquantity() > 0) { 48 produto.last(); 49 lastordem = produto.getordem(); 50 } 51 } private void add() { 54 // Define os valores. 55 ordem = lastordem + 1; 56 nome = "Nome " + ordem.tostring(); 57 valor = ordem; 58 // Configura os valores e salva a insercao. 59 produto.insert(); 60 produto.setordem(ordem); 61 produto.setnome(nome); 62 produto.setvalor(valor); 63 produto.save(); // Define os valores. 66 ordem++; 67 nome = "Nome " + ordem.tostring(); 68 valor = ordem; 69 // Configura os valores e salva a insercao. 70 produto.insert(); 71 produto.setordem(ordem); 72 produto.setnome(nome); 73 produto.setvalor(valor); 74 produto.save(); 75 } private void edit() { 78 // Define os valores. 79 nome = produto.getnome().touppercase(); 80 valor = produto.getvalor() ; 81 // Configura os valores e salva a edicao. 82 produto.edit();

14 83 produto.setnome(nome); 84 produto.setvalor(valor); 85 produto.save(); 86 } private void delete() { 89 int penultimo = produto.getqueryquantity() - 1; 90 produto.absoluteposition(penultimo); 91 produto.delete(); 92 } private void list() { 95 System.out.println(produto.getRowsVisible().toString()); 96 } public static void main(string[] args) { 99 java.awt.eventqueue.invokelater(new Runnable() { 100 public void run() { 101 new TesteProduto(); 102 } 103 }); 104 } } Listagem 3 Código fonte da classe TesteProduto. Para gerar os bytecodes do programa é necessário acessar o interpretador de comandos do SO, seguir até o interior do diretório raiz do programa e entrar com o comando apresentado na Figura 6. Figura 6 Gerando os bytecodes do programa. Ao executar o comando a estrutura de diretórios e arquivos do seu programa conterá os arquivos.class, os quais contém os bytecodes (Figura 7).

15 Figura 7 Organização do sistema após geração de bytecodes. Após gerar os bytecodes é possível rodar o software. Então, ainda no interpretador de comandos é necessário entrar com o comando exibido no topo da Figura 8. Após a execução, o programa realizará a inserção de dois produtos, a alteração do último recentemente inserido e a exclusão do penúltimo recentemente inserido. Dessa maneira, após três execuções tem-se o resultado apresentado na última linha da Figura 9. Figura 8 Primeira execução do programa.

16 Figura 9 Terceira execução do programa. 5. Considerações Finais CEP JDB podem funcionar como componentes JavaBeans. Para isso, elas deverão reescrever o construtor padrão de AbstractEntity. Veja o tutorial Tratando Classes de Entidades Persistentes como Componentes em (SIQUEIRA, 2011). Também é importante lembrar que uma CEP JDB é uma JDBQuery, portanto, poderá ser utilizada para programação baseada em componentes no IDE Netbeans como demonstrado nos tutoriais disponíveis no site oficial do projeto É necessário saber que os métodos getfield e setfield de AbstractEntity retornam e configuram, respectivamente, valores de colunas das tabelas que uma determinada CEP JDB representa, levando em consideração o tipo de dado determinado pelo driver JDBC. Dessa maneira, o método getfield( id ) retornará um Integer no interior de um Object Java, caso o driver JDBC informe ao JDB que o tipo de dado da coluna id é Integer. Da mesma maneira o método setfield( id, id) deverá receber um Integer em seu segundo parâmetro para que a coluna definida no primeiro parâmetro possa ser configurada. É possível que drivers JDB fornecidos por determinados fabricantes de SGBD apresentem erros no mapeamento de seus tipos de dados para os tipos Java. Isso poderá causar problemas na utilização das CEP JDB. Entretanto, o Framework JDB fornece uma maneira para que o programador possa contornar essa deficiência e

17 definir o correto tipo de dado para cada coluna trazida em uma consulta SQL. Para saber mais sobre essa configuração o leitor poderá estudar a documentação JavaDoc dos métodos: lib.jdb.jdbquery.jdbquery.setcustomfieldstypes (java.lang.string customfieldstypes); lib.jdb.jdbquery.jdbquery.getcustomfieldstypes(); Para conferir qual o tipo de dado que o JDBQuery está usando para cada coluna trazida na consulta SQL, pode-se utilizar os métodos: lib.jdb.jdbquery.jdbquery.getfieldstypes(); lib.jdb.jdbquery.jdbquery.getfieldstypesnames(); lib.jdb.jdbquery.jdbquery.getfieldtype(int indexfield) lib.jdb.jdbquery.jdbquery.getfieldtype( java.lang.string fieldname); lib.jdb.jdbquery.jdbquery.getfieldtypename( int indexfield); lib.jdb.jdbquery.jdbquery.getfieldtypename( java.lang.string fieldname); 6. Referências BEZERRA, E. Princípios de Análise e Projeto de Sistemas com UML. 2. ed. Rio de Janeiro: Elsevier, MYSQL. MySQL database. MySQL Downloads, Disponivel em: < Acesso em: 10 dez ORACLE. Data Access Object. Java 2 EE, Disponivel em: < Acesso em: 8 out SIQUEIRA, W. Tratando Classes de Entidades Persistentes como componentes. JDB Framework, Disponivel em: < Acesso em: 6 set

18 SIQUEIRA, W. Tutoriais JDB. JDB Framework, Disponivel em: < Acesso em: 6 set

Java Desktop Basis. Brasil, Natal-RN, 29 de maio de 2011 Welbson Siqueira Costa. www.jdbframework.com

Java Desktop Basis. Brasil, Natal-RN, 29 de maio de 2011 Welbson Siqueira Costa. www.jdbframework.com Java Desktop Basis Brasil, Natal-RN, 29 de maio de 2011 Welbson Siqueira Costa www.jdbframework.com A velocidade com que Java foi adotada pela comunidade científica é realmente impressionante. Desde o

Leia mais

Persistência de Classes em Tabelas de Banco de Dados

Persistência de Classes em Tabelas de Banco de Dados UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Persistência de Classes em Tabelas de Banco de Dados 1) Introdução! Em algumas situações, pode ser necessário preservar os objetos

Leia mais

Desenvolvendo Aplicações Web com NetBeans

Desenvolvendo Aplicações Web com NetBeans Desenvolvendo Aplicações Web com NetBeans Aula 3 Cap. 4 Trabalhando com Banco de Dados Prof.: Marcelo Ferreira Ortega Introdução O trabalho com banco de dados utilizando o NetBeans se desenvolveu ao longo

Leia mais

ruirossi@ruirossi.pro.br

ruirossi@ruirossi.pro.br Persistência Com JPA & Hibernate Rui Rossi dos Santos ruirossi@ruirossi.pro.br Mediador: Rui Rossi dos Santos Slide 1 Mapeamento Objeto-Relacional Contexto: Linguagem de programação orientada a objetos

Leia mais

Banco de Dados. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com

Banco de Dados. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Banco de Dados Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Roteiro Mapeamento de objetos para modelo relacional Estratégias de persistência Persistência JDBC Mapeando Objetos para o Modelo Relacional

Leia mais

Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP

Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP 1) Introdução Programação Orientada a Objetos é um paradigma de programação bastante antigo. Entretanto somente nos últimos anos foi aceito realmente

Leia mais

JDB Java Desktop Basis

JDB Java Desktop Basis JDB Java Desktop Basis Por Welbson Siqueira Costa Brasil Natal/RN 2012 ii Copyright 2012, Welbson Siqueira Costa. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. Nenhuma parte deste

Leia mais

PHP INTEGRAÇÃO COM MYSQL PARTE 1

PHP INTEGRAÇÃO COM MYSQL PARTE 1 INTRODUÇÃO PHP INTEGRAÇÃO COM MYSQL PARTE 1 Leonardo Pereira leonardo@estudandoti.com.br Facebook: leongamerti http://www.estudandoti.com.br Informações que precisam ser manipuladas com mais segurança

Leia mais

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

Manipulação de Banco de Dados com Java 1. Objetivos 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

Leia mais

Java e Banco de Dados: JDBC, Hibernate e JPA

Java e Banco de Dados: JDBC, Hibernate e JPA Java e Banco de Dados: JDBC, Hibernate e JPA 1 Objetivos Apresentar de forma progressiva as diversas alternativas de persistência de dados que foram evoluindo na tecnologia Java, desde o JDBC, passando

Leia mais

Manipulação de Banco de Dados com Java. Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015

Manipulação de Banco de Dados com Java. Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015 Manipulação de Banco de Dados com Java Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015 Acesso a um SGBD Em sistemas mais simples o uso de arquivos pode ser usado mas para aplicações

Leia mais

JPA: Persistência padronizada em Java

JPA: Persistência padronizada em Java JPA: Persistência padronizada em Java FLÁVIO HENRIQUE CURTE Bacharel em Engenharia de Computação flaviocurte.java@gmail.com Programação Orientada a Objetos X Banco de Dados Relacionais = Paradigmas diferentes

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 10 Persistência de Dados

Leia mais

Persistência de Dados em Java com JPA e Toplink

Persistência de Dados em Java com JPA e Toplink Persistência de Dados em Java com JPA e Toplink Vinicius Teixeira Dallacqua Curso de Tecnologia em Sistemas para Internet Instituto Federal de Educação, Ciência e Tecnologia - IFTO AE 310 Sul, Avenida

Leia mais

JDBC Java Database Connectivity

JDBC Java Database Connectivity 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

Leia mais

Disciplina de Banco de Dados Parte V

Disciplina de Banco de Dados Parte V Disciplina de Banco de Dados Parte V Prof. Elisa Maria Pivetta CAFW - UFSM Modelo de Dado Relacional O Modelo Relacional O Modelo ER é independente do SGDB portanto, deve ser o primeiro modelo gerado após

Leia mais

SOA Introdução. SOA Visão Departamental das Organizações

SOA Introdução. SOA Visão Departamental das Organizações 1 Introdução A Organização é a forma pela qual nós coordenamos nossos recursos de todos os tipos para realizar o trabalho que nos propusemos a fazer. A estrutura de nossas organizações manteve-se basicamente

Leia mais

Persistência de dados com JPA. Hélder Antero Amaral Nunes haanunes@gmail.com

Persistência de dados com JPA. Hélder Antero Amaral Nunes haanunes@gmail.com Persistência de dados com JPA Hélder Antero Amaral Nunes haanunes@gmail.com O que é persistência? A persistência de dados é o fato de pegar um dado e torná-lo persistente, ou seja, salvar em algum banco

Leia mais

Mapeamento Lógico/Relacional com JPA

Mapeamento Lógico/Relacional com JPA Mapeamento Lógico/Relacional com JPA Elaine Quintino da Silva Doutora em Ciência da Computação pelo ICMC-USP/São Carlos Analista de Sistemas UOL PagSeguro Instrutora Globalcode Agenda! Persistência de

Leia mais

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Programação com acesso a BD Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Modelos de Dados, Esquemas e Instâncias 2 Modelos de Dados, Esquemas e Instâncias Modelo de dados: Conjunto de conceitos

Leia mais

HIBERNATE EM APLICAÇÃO JAVA WEB

HIBERNATE EM APLICAÇÃO JAVA WEB HIBERNATE EM APLICAÇÃO JAVA WEB Raul Victtor Barbosa Claudino¹, Ricardo Ribeiro Rufino¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil victtor.claudino@gmail.com, ricardo@unipar.br Resumo: Este

Leia mais

Linguagem de Programação Orientada a Objeto. Introdução a Orientação a Objetos Professora Sheila Cáceres

Linguagem de Programação Orientada a Objeto. Introdução a Orientação a Objetos Professora Sheila Cáceres Linguagem de Programação Orientada a Objeto Introdução a Orientação a Objetos Professora Sheila Cáceres Introdução a Orientação a Objetos No mundo real, tudo é objeto!; Os objetos se relacionam entre si

Leia mais

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

INTRODUÇÃO. No entanto, o que pode ser considerado um produto (resultado) da criação de BDs? BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br INTRODUÇÃO Um Banco

Leia mais

Persistindo dados com TopLink no NetBeans

Persistindo dados com TopLink no NetBeans Persistindo dados com TopLink no NetBeans O que é TopLink? O TopLink é uma ferramenta de mapeamento objeto/relacional para Java. Ela transforma os dados tabulares de um banco de dados em um grafo de objetos

Leia mais

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

Curso de Java. Acesso a banco de dados através do Hibernate. Todos os direitos reservados Klais Curso de Java Acesso a banco de dados através do Hibernate Todos os direitos reservados Klais Motivação Java é uma linguagem orientada a objetos: Numa aplicação, o uso de objetos é um recurso importante

Leia mais

Padrão J2EE Data Access Object (DAO)

Padrão J2EE Data Access Object (DAO) Introdução CRUD DAO Exemplo Padrão J2EE Data Access Object (DAO) Prof. Enzo Seraphim Motivação para usar Componentes precisam acessar e armazenar informações em armazenamento persistente As APIs de armazenamento

Leia mais

Aula 02 Modelagem de Dados. Banco de Dados. Aula 02 Modelagem de Dados. Superior /2011 Redes Computadores - Disciplina: Banco de Dados -

Aula 02 Modelagem de Dados. Banco de Dados. Aula 02 Modelagem de Dados. Superior /2011 Redes Computadores - Disciplina: Banco de Dados - Banco de Dados Aula 02 Modelagem de Dados Roteiro Definição Evolução Projeto de BD Abstração Esquema e Instância Definição É uma representação, normalmente gráfica, de estruturas de dados reais. Auxilia

Leia mais

Programação para Android. Aula 08: Persistência de dados SQL

Programação para Android. Aula 08: Persistência de dados SQL Programação para Android Aula 08: Persistência de dados SQL Persistência de dados Na maioria das aplicações precisamos ter algum tipo de persistência de dados. Para guardar informações de forma persistente

Leia mais

Drive MySql de conexão para Eclipse

Drive MySql de conexão para Eclipse Drive MySql de conexão para Eclipse de Setembro de 0 Olá, neste artigo iremos focar em como utilizar o drive de conexão do Mysql na IDE eclipse. Veremos passo-a-passo como instalar, o que é uma coisa muito

Leia mais

JDBC. Prof. Márcio Bueno (poonoite@marciobueno.com)

JDBC. Prof. Márcio Bueno (poonoite@marciobueno.com) JDBC Prof. Márcio Bueno (poonoite@marciobueno.com) JBDC Java Database Connectivity ou JDBC é um conjunto de classes e interfaces (API) escritas em Java que faz o envio de instruções SQL para qualquer banco

Leia mais

Etc & Tal. Volume 2 - Número 1 - Abril 2009 SBC HORIZONTES 44

Etc & Tal. Volume 2 - Número 1 - Abril 2009 SBC HORIZONTES 44 Armazenando Dados em Aplicações Java Parte 2 de 3: Apresentando as opções Hua Lin Chang Costa, hualin@cos.ufrj.br, COPPE/UFRJ. Leonardo Gresta Paulino Murta, leomurta@ic.uff.br, IC/UFF. Vanessa Braganholo,

Leia mais

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

Prevayler. Perola. André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki Prevayler Perola André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki Prevayler Prevayler é a implementação em Java do conceito de Prevalência. É um framework que prega uma JVM invulnerável

Leia mais

Autor: Ricardo Francisco Minzé Júnior - ricardominze@yahoo.com.br Desenvolvendo aplicações em camadas com PHP 5.

Autor: Ricardo Francisco Minzé Júnior - ricardominze@yahoo.com.br Desenvolvendo aplicações em camadas com PHP 5. Desenvolvendo aplicações em camadas com PHP 5. Talvez a primeira vista você ache estranha a palavra Camada em programação, mas o que vem a ser Camada? Segundo o dicionário: Camada 1 - Qualquer matéria

Leia mais

MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO

MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO UTILIZANDO O HIBERNATE Rafael Laurino GUERRA, Dra. Luciana Aparecida Martinez ZAINA Faculdade de Tecnologia de Indaiatuba FATEC-ID 1 RESUMO Este artigo apresenta

Leia mais

JPA Passo a Passo. Henrique Eduardo M. Oliveira henrique@voffice.com.br. Globalcode Open4Education

JPA Passo a Passo. Henrique Eduardo M. Oliveira henrique@voffice.com.br. Globalcode Open4Education JPA Passo a Passo Henrique Eduardo M. Oliveira henrique@voffice.com.br 1 Palestrante Henrique Eduardo M. Oliveira (henrique@voffice.com.br) > Trabalha: Arquiteto JEE / Instrutor Java > Formação: Ciências

Leia mais

JDBC. Java DataBase Connectivity

JDBC. Java DataBase Connectivity JDBC Java DataBase Connectivity JDBC??? Uma API que permite o acesso a virtualmente qualquer fonte de dado tabular a partir de um programa escrito em Java O que é uma uma fonte de dados tabular? acesso

Leia mais

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

SISTEMA EXPERIMENTALL 15/11/2009. Olá! A partir de agora vamos conhecer a IDE NetBeans 6.7.1 efetuando um micro projeto swing. 15/11/2009 Olá! A partir de agora vamos conhecer a IDE NetBeans 6.7.1 efetuando um micro projeto swing. Crie um novo projeto clicando em arquivo e em novo projeto. Escolha a opção java, aplicativo java

Leia mais

SGBD ITB 1.INTRODUÇÃO 1.INTRODUÇÃO. 1.1. Conceito SGBD: Sistema gerenciador de banco de dados. 1.2. Constituição SGBD

SGBD ITB 1.INTRODUÇÃO 1.INTRODUÇÃO. 1.1. Conceito SGBD: Sistema gerenciador de banco de dados. 1.2. Constituição SGBD ITB SGBD Aurélio Candido Jr 1 1.INTRODUÇÃO 1.1. Conceito SGBD: Sistema gerenciador de banco de dados Um SGBD é uma coleção de programas que permitem ao usuário definir, construir e manipular Bases de Dados

Leia mais

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL

APOSTILA BANCO DE DADOS INTRODUÇÃO A LINGUAGEM SQL 1. O que é Linguagem SQL 2. Instrução CREATE 3. CONSTRAINT 4. ALTER TABLE 5. RENAME TABLE 6. TRUCANTE TABLE 7. DROP TABLE 8. DROP DATABASE 1 1. O que é Linguagem SQL 2. O SQL (Structured Query Language)

Leia mais

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

JDBC. Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos. JDBC CRIANDO O BANCO DE DADOS: Siga as instruções para instalar o banco de dados H2 e criar a tabela Alunos. CRIANDO O PROJETO JAVA PARA DESKTOP: Crie um projeto Java chamado Prograd Crie um pacote chamado

Leia mais

Persistência de Classe e Auto- Relacionamento em Tabelas de Banco de Dados

Persistência de Classe e Auto- Relacionamento em Tabelas de Banco de Dados UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Persistência de Classe e Auto- Relacionamento em Tabelas de Banco de Dados 1) Introdução! Em algumas situações, pode ser necessário

Leia mais

Programação Orientada a Objetos em Java

Programação Orientada a Objetos em Java Programação Orientada a Objetos em Java Rone Ilídio da Silva Universidade Federal de São João del-rei Campus Alto Paraopeba 1:14 1 Objetivo Apresentar os principais conceitos de Programção Orientada a

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

Java na WEB Banco de Dados

Java na WEB Banco de Dados 1 Java na WEB Banco de Dados Objetivo: Ao final da aula o aluno será capaz de: Criar aplicações JSP com acesso ao Banco de Dados MySql Configurar o TomCat para acessar o MySql. Não é Objetivo: Ao final

Leia mais

Padrão Arquitetura em Camadas

Padrão Arquitetura em Camadas Padrão Arquitetura em Camadas Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Definição Estimula a organização

Leia mais

Como já foi muito bem detalhado no Capítulo IV, o jcompany Developer Suite pode ser

Como já foi muito bem detalhado no Capítulo IV, o jcompany Developer Suite pode ser A1Criando um módulo de negócio Capítulo 27 Aplicação dividida em módulos - Introdução Como já foi muito bem detalhado no Capítulo IV, o jcompany Developer Suite pode ser compreendido como uma solução de

Leia mais

Resolvendo objeto-relacional impedance mismatch com hibernate

Resolvendo objeto-relacional impedance mismatch com hibernate Resolvendo objeto-relacional impedance mismatch com hibernate August 7, 2013 Sumário I 1 Introdução 2 3 4 Sumário II 5 Contexto Mapeamento Objeto-Relacional (ORM) é uma técnica de programação para converter

Leia mais

Banco de Dados. Maurício Edgar Stivanello

Banco de Dados. Maurício Edgar Stivanello Banco de Dados Maurício Edgar Stivanello Agenda Conceitos Básicos SGBD Projeto de Banco de Dados SQL Ferramentas Exemplo Dado e Informação Dado Fato do mundo real que está registrado e possui um significado

Leia mais

GERADOR DE CÓDIGO JSP BASEADO EM PROJETO DE SGBD. Acadêmico: Maicon Klug Orientadora: Joyce Martins

GERADOR DE CÓDIGO JSP BASEADO EM PROJETO DE SGBD. Acadêmico: Maicon Klug Orientadora: Joyce Martins GERADOR DE CÓDIGO JSP BASEADO EM PROJETO DE SGBD Acadêmico: Maicon Klug Orientadora: Joyce Martins Roteiro Introdução Objetivos do trabalho Fundamentação teórica Desenvolvimento do trabalho Conclusão Extensões

Leia mais

UML Unified Modeling Language

UML Unified Modeling Language UML Unified Modeling Language Linguagem de Modelagem Unificada A linguagem UML UML (Unified Modeling Language) Linguagem de Modelagem Unificada É uma linguagem para especificação, É uma linguagem para

Leia mais

Hibernate. Mapeamento Objeto-Relacional. Prof. Anselmo Cardoso Paiva Prof. Geraldo Braz Junior

Hibernate. Mapeamento Objeto-Relacional. Prof. Anselmo Cardoso Paiva Prof. Geraldo Braz Junior Hibernate Mapeamento Objeto-Relacional Baseado nas notas de aula de João Dalyson e Raphaela Galhardo Fernandes Prof. Anselmo Cardoso Paiva Prof. Geraldo Braz Junior Objetivos Aprender MOR usando Hibernate

Leia mais

HIBERNATE Criando um projeto em Java + Hibernate do zero

HIBERNATE Criando um projeto em Java + Hibernate do zero HIBERNATE Criando um projeto em Java + Hibernate do zero SUMÁRIO 1 Instalação do NetBeans 2 Instalação do Java Development Kit (JDK) 3 Criar projeto no NetBeans 4 O arquivo hibernate.cfg.xml 5 Criar as

Leia mais

Banco de Dados. Banco de Dados. Alcides Pamplona alcides.pamplona@gmail.com. Alcides Pamplona Linguagem de Programação CESBD 2010

Banco de Dados. Banco de Dados. Alcides Pamplona alcides.pamplona@gmail.com. Alcides Pamplona Linguagem de Programação CESBD 2010 Alcides Pamplona Linguagem de Programação CESBD 2010 Alcides Pamplona alcides.pamplona@gmail.com Tópicos API JDBC Utilizando JDBC Statement PreparedStatement Mapeamento Objeto-Relacional 2 API JDBC 3 API

Leia mais

Uma Proposta de Tecnologia Embarcada na Internação Domiciliar Capítulo 3 Implementação do SMD 93

Uma Proposta de Tecnologia Embarcada na Internação Domiciliar Capítulo 3 Implementação do SMD 93 Capítulo 3 Implementação do SMD 93 CAPÍTULO 3 IMPLEMENTAÇÃO DO SMD Este capítulo reserva-se à apresentação da implementação do SMD tomando como partida o desenvolvimento do Projeto Preliminar que consta

Leia mais

Aplicabilidade: visão geral

Aplicabilidade: visão geral CURSO BÁSICO SAXES 2 Aplicabilidade: visão geral BI Comércio Indústria nf-e Serviços Software house Enterprise Business Bus Banco financeiro Instituição Sindicato ERP html Casos 3 6 Customização: importação

Leia mais

Conceitos básicos. Aplicações de banco de dados. Conceitos básicos (cont.) Dado: Um fato, alguma coisa sobre a qual uma inferência é baseada.

Conceitos básicos. Aplicações de banco de dados. Conceitos básicos (cont.) Dado: Um fato, alguma coisa sobre a qual uma inferência é baseada. Conceitos básicos Angélica Toffano Seidel Calazans E-mail: angelica_toffano@yahoo.com.br Conceitos introdutórios de Modelagem de dados Dado: Um fato, alguma coisa sobre a qual uma inferência é baseada.

Leia mais

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

Persistência de Objetos no SGBD PostgreSQL, Utilizando as APIs: JDBC, JDK, Swing e Design Patteners DAO. Persistência de Objetos no SGBD PostgreSQL, Utilizando as APIs: JDBC, JDK, Swing e Design Patteners DAO. Robson Adão Fagundes http://robsonfagundes.blogspot.com/ Mini curso Desenvolvimento de aplicação

Leia mais

Curso Adonai QUESTÕES Disciplina Linguagem JAVA

Curso Adonai QUESTÕES Disciplina Linguagem JAVA 1) Qual será o valor da string c, caso o programa rode com a seguinte linha de comando? > java Teste um dois tres public class Teste { public static void main(string[] args) { String a = args[0]; String

Leia mais

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

Acesso a Banco. Conexão em Java. Conexão em Java. Programação Orientada a Objetos Profa. Cristiane e Prof. Daniel Acesso a Banco Programação Orientada a Objetos Profa. Cristiane e Prof. Daniel As conexões em Java são feitas através de uma ponte que implementa todas as funcionalidades que um banco de dados padrão deve

Leia mais

Introdução. à Linguagem JAVA. Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação. Laboratório de Visão Computacional

Introdução. à Linguagem JAVA. Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação. Laboratório de Visão Computacional Introdução à Linguagem JAVA Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação Laboratório de Visão Computacional Vantagens do Java Independência de plataforma; Sintaxe semelhante às linguagens

Leia mais

Java. Marcio de Carvalho Victorino www.dominandoti.eng.br

Java. Marcio de Carvalho Victorino www.dominandoti.eng.br Java Marcio de Carvalho Victorino www.dominandoti.eng.br 3. Considere as instruções Java abaixo: int cont1 = 3; int cont2 = 2; int cont3 = 1; cont1 += cont3++; cont1 -= --cont2; cont3 = cont2++; Após a

Leia mais

Aula 1 Acesso a Banco de Dados

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 Introdução O JDBC (Java Database Connectivity) foi criado com o intuito de fornecer aos programadores

Leia mais

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

Front-End Uso da Linguagem Turbo Delphi para Acesso ao Banco de Dados Mysql Universidade Federal de Mato Grosso-UFMT Sistemas de Informação Laboratório de Programação Visual Prof. Clóvis Júnior Front-End Uso da Linguagem Turbo Delphi para Acesso ao Banco de Dados Mysql Estrutura

Leia mais

Struts 2 : Projeto e Programação Editora: Ciência Moderna Autor: Antunes Budi Kurniawan Número de páginas: 600

Struts 2 : Projeto e Programação Editora: Ciência Moderna Autor: Antunes Budi Kurniawan Número de páginas: 600 Objetivo Com enfoque totalmente prático permite que programadores Java possam ampliar seus conhecimentos no mundo Web na criação de sistemas profissionais. Utilizar os modelos de programação com Servlets,

Leia mais

Principais Comandos SQL Usados no MySql

Principais Comandos SQL Usados no MySql Principais Comandos SQL Usados no MySql O que é um SGBD? Um Sistema Gerenciador de Banco de Dados (como no Brasil) ou Sistema Gestor de Base de Dados (SGBD) é o conjunto de programas de computador (softwares)

Leia mais

Modelo Cliente/Servidor Por HIARLY ALVES

Modelo Cliente/Servidor Por HIARLY ALVES UNICE Ensino Superior Linguagem de Programação Ambiente Cliente Servidor. Modelo Cliente/Servidor Por HIARLY ALVES Fortaleza - CE CONCEITOS Cliente x Servidor. Cliente É um programa (software) executado

Leia mais

MOR: Uma Ferramenta para o Mapeamento Objeto-Relacional em Java

MOR: Uma Ferramenta para o Mapeamento Objeto-Relacional em Java MOR: Uma Ferramenta para o Mapeamento Objeto-Relacional em Java Leonardo Gresta Paulino Murta Gustavo Olanda Veronese Cláudia Maria Lima Werner {murta, veronese, werner}@cos.ufrj.br COPPE/UFRJ Programa

Leia mais

AULA 2 INTERAÇÃO COM O BANCO DE DADOS

AULA 2 INTERAÇÃO COM O BANCO DE DADOS AULA 2 INTERAÇÃO COM O BANCO DE DADOS BANCO DE DADOS POSTGRESQL O PostgreSQL é um sistema gerenciador de banco de dados dos mais robustos e avançados do mundo. Seu código é aberto e é totalmente gratuito,

Leia mais

Objetivos: Sun recomenda que utilize o nome de domínio da Internet da empresa, para garantir um nome de pacote único

Objetivos: Sun recomenda que utilize o nome de domínio da Internet da empresa, para garantir um nome de pacote único Pacotes e Encapsulamento Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Introdução Permite o agrupamento de classes em uma coleção chamada pacote Um pacote é uma coleção de classes

Leia mais

Faculdade Pitágoras 16/08/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet

Faculdade Pitágoras 16/08/2011. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL A linguagem SQL é responsável por garantir um bom nível

Leia mais

Faculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL

Faculdade Pitágoras. Curso Superior de Tecnologia: Banco de Dados. Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL Faculdade Pitágoras Curso Superior de Tecnologia: Banco de Dados Disciplina: Banco de Dados Prof.: Fernando Hadad Zaidan SQL A linguagem SQL é responsável por garantir um bom nível de independência do

Leia mais

Programação Orientada a Objetos (DPADF 0063)

Programação Orientada a Objetos (DPADF 0063) Programação Orientada a Objetos (DPADF 0063) Aula 9 JDBC (Java Database Connectivity) Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas

Leia mais

RELACIONAMENTOS ENTRE OS OBJETOS NO FRAMEWORK HIBERNATE Elio Lovisi Filho 1 Ronney Moreira de Castro 2 RESUMO

RELACIONAMENTOS ENTRE OS OBJETOS NO FRAMEWORK HIBERNATE Elio Lovisi Filho 1 Ronney Moreira de Castro 2 RESUMO Revista Eletrônica da Faculdade Metodista Granbery http://re.granbery.edu.br - ISSN 1981 0377 Curso de Sistemas de Informação - N. 10, JAN/JUN 2011 RELACIONAMENTOS ENTRE OS OBJETOS NO FRAMEWORK HIBERNATE

Leia mais

Framework utilizando reflexão e aspectos para persistência de objetos em java

Framework utilizando reflexão e aspectos para persistência de objetos em java Framework utilizando reflexão e aspectos para persistência de objetos em java Antonio Carlos Rolloff (UNIPAR) acrolloff@gmail.com Arthur Cattaneo Zavadski (UNIPAR) arthur@datacoper.com.br Maria Aparecida

Leia mais

Persistência em Software Orientado a Objetos:

Persistência em Software Orientado a Objetos: Persistência em Software Orientado a Objetos: Abordagens Utilizando Frameworks OpenSource Marcelo Santos Daibert Orientador: Marco Antônio Pereira Araújo Co-Orientadora: Alessandreia Marta de Oliveira

Leia mais

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

Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans. 1 - Criando uma classe em Java Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans. Antes de criarmos a(s) classe(s) é necessário criar o projeto

Leia mais

Orientação a Objetos com Java

Orientação a Objetos com Java Orientação a Objetos com Java Julio Cesar Nardi julionardi@yahoo.com.br 2011/2 Apresentação 3: Orientação Objetos: Conceitos Básicos Objetivos: Compreender os Conceitos Básicos da Orientação a Objetos;

Leia mais

Implementando uma Classe e Criando Objetos a partir dela

Implementando uma Classe e Criando Objetos a partir dela Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 04 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 2 Prof. Cristóvão Cunha Implementando uma Classe

Leia mais

MANIPULAÇÃO DE BANCO DE DADOS UTILIZANDO INTERFACE GRÁFICA

MANIPULAÇÃO DE BANCO DE DADOS UTILIZANDO INTERFACE GRÁFICA JOSIEL S. MOURA MANIPULAÇÃO DE BANCO DE DADOS UTILIZANDO INTERFACE GRÁFICA ORIENTADO A PROJETO: CONTROLE DE ESTOQUE 2012 JOSIEL S. MOURA MANIPULAÇÃO DE BANCO DE DADOS UTILIZANDO INTERFACE GRÁFICA ORIENTADO

Leia mais

UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA CIÊNCIA DA COMPUTAÇÃO LINGUAGENS PARA APLICAÇÃO COMERCIAL. Java Peristence API 1.

UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA CIÊNCIA DA COMPUTAÇÃO LINGUAGENS PARA APLICAÇÃO COMERCIAL. Java Peristence API 1. UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA CIÊNCIA DA COMPUTAÇÃO LINGUAGENS PARA APLICAÇÃO COMERCIAL Java Peristence API 1.0 Salvador-Ba Março/2009 1 RAMON PEREIRA LOPES Java Peristence API

Leia mais

Programação Orientada a Objetos - 3º semestre AULA 08 Prof. André Moraes

Programação Orientada a Objetos - 3º semestre AULA 08 Prof. André Moraes Pág 50 Programação Orientada a Objetos - 3º semestre AULA 08 Prof. André Moraes 10 CORREÇÃO DE QUESTÕES DE AVALIAÇÃO 1 PARTE I - AVALIAÇÃO TEÓRICA 11 RESPONDA AS QUESTÕES ABAIXO: A) Qual a diferença entre

Leia mais

Programação Orientada a Objetos e Java - Introdução. Carlos Lopes

Programação Orientada a Objetos e Java - Introdução. Carlos Lopes Programação Orientada a Objetos e Java - Introdução Carlos Lopes POO e Java Objetivo: proporcionar uma visão dos conceitos de POO e do seu uso na estruturação dos programas em Java. Classes e objetos em

Leia mais

Exercícios de Revisão Java Básico

Exercícios de Revisão Java Básico Exercícios de Revisão Java Básico (i) Programação básica (estruturada) 1) Faça um programa para calcular o valor das seguintes expressões: S 1 = 1 1 3 2 5 3 7 99... 4 50 S 2 = 21 50 22 49 23 48...250 1

Leia mais

Android e Bancos de Dados

Android e Bancos de Dados (Usando o SQLite) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do

Leia mais

Banco de Dados. Arquitetura e Terminologia. Prof. Walteno Martins Parreira Jr www.waltenomartins.com.br waltenomartins@yahoo.

Banco de Dados. Arquitetura e Terminologia. Prof. Walteno Martins Parreira Jr www.waltenomartins.com.br waltenomartins@yahoo. Banco de Dados Arquitetura e Terminologia Prof. Walteno Martins Parreira Jr www.waltenomartins.com.br waltenomartins@yahoo.com 2015 Modelo de Dados e Esquemas O modelo de Banco de Dados é como um detalhamento

Leia mais

ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE

ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE Amarildo Aparecido Ferreira Junior 1, Ricardo Ribeiro Rufino 1 ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil aapfjr@gmail.com

Leia mais

Programação Orientada a Objeto

Programação Orientada a Objeto Programação Orientada a Objeto Classes, Atributos, Métodos e Objetos Programação de Computadores II Professor: Edwar Saliba Júnior 1) Java é uma linguagem orientada a objetos. Para que possamos fazer uso

Leia mais

OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO

OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO Prof. Msc. Carlos José Giudice dos Santos carlos@oficinadapesquisa.com.br www.oficinadapesquisa.com.br Linguagens de Programação Material

Leia mais

Integrando Java com Banco de Dados

Integrando Java com Banco de Dados Especialização em Engenharia de Software Programação Orientada a Objetos JDBC Java Database Connectivity Sérgio Soares scbs@cin.ufpe.br Objetivos Apresentar os conceitos básicos da especificação de Java

Leia mais

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011 CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma

Leia mais

Prova Específica Cargo Desenvolvimento

Prova Específica Cargo Desenvolvimento UNIVERSIDADE FEDERAL DO PIAUÍ Centro de Educação Aberta e a Distância CEAD/UFPI Rua Olavo Bilac 1148 - Centro CEP 64.280-001 Teresina PI Brasil Fones (86) 3215-4101/ 3221-6227 ; Internet: www.uapi.edu.br

Leia mais

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

1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF) Sessão Prática II JPA entities e unidades de persistência 1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF) a) Criar um Web Application (JPAsecond) como anteriormente:

Leia mais

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS Campus Cachoeiro de Itapemirim Curso Técnico em Informática Disciplina: Análise e Projeto de Sistemas Professor: Rafael Vargas Mesquita Este exercício deve ser manuscrito e entregue na próxima aula; Valor

Leia mais

Comparando Java e C#

Comparando Java e C# Por: Lincon Alexandre Marques Jonathan T. Dos Santos Ricardo Fumio Tanimoto Abril, 2009 Comparando Java e C# Introdução Escolhemos como tema deste artigo um comparativo entre as linguagens Java e C#, duas

Leia mais

Programação SQL. Introdução

Programação SQL. Introdução Introdução Principais estruturas duma Base de Dados: Uma BD relacional é constituída por diversas estruturas (ou objectos ) de informação. Podemos destacar: Database: designa a própria BD; Table/Tabela:

Leia mais

Programação Orientada a Objetos em Java. Herança

Programação Orientada a Objetos em Java. Herança Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Programação Orientada a Objetos em Java Herança Professor: César Melo Slides baseados em materiais preparados

Leia mais

Programação Orientada a Objetos JDBC Java Database Connectivity

Programação Orientada a Objetos JDBC Java Database Connectivity Especialização em Engenharia de Software Programação Orientada a Objetos JDBC Java Database Connectivity Sérgio Soares scbs@cin.ufpe.br Objetivos Apresentar os conceitos básicos da especificação de Java

Leia mais

Lógica de Programação

Lógica de Programação Lógica de Programação Unidade 4 Ambiente de desenvolvimento Java QI ESCOLAS E FACULDADES Curso Técnico em Informática SUMÁRIO A LINGUAGEM JAVA... 3 JVM, JRE, JDK... 3 BYTECODE... 3 PREPARANDO O AMBIENTE

Leia mais

MANIPULANDO BANCO DE DADOS NO POSTGRESQL SEM FAZER USO DE COMANDOS SQL

MANIPULANDO BANCO DE DADOS NO POSTGRESQL SEM FAZER USO DE COMANDOS SQL MANIPULANDO BANCO DE DADOS NO POSTGRESQL SEM FAZER USO DE COMANDOS SQL INTRODUÇÃO: O PostgreSQL é um dos mais populares e avançados sistemas gerenciadores de banco de dados (SGBD) com código aberto. É

Leia mais