Classes de Entidades Persistentes JDB

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

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

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

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

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

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

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

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

LINGUAGEM DE BANCO DE DADOS

LINGUAGEM DE BANCO DE DADOS LINGUAGEM DE BANCO DE DADOS Gabriela Trevisan Bacharel em Sistemas de Informação Universidade Federal do Rio Grande Pós-Graduanda Formação Pedagógica de Professores (FAQI) Conceito de BD Um banco de dados

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

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

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

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

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

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

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

Introdução a Java. Hélder Nunes

Introdução a Java. Hélder Nunes Introdução a Java Hélder Nunes 2 Exercício de Fixação Os 4 elementos básicos da OO são os objetos, as classes, os atributos e os métodos. A orientação a objetos consiste em considerar os sistemas computacionais

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

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

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

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

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

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

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

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

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

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

UML Aspectos de projetos em Diagramas de classes

UML Aspectos de projetos em Diagramas de classes UML Aspectos de projetos em Diagramas de classes Após ser definido o contexto da aplicação a ser gerada. Devemos pensar em detalhar o Diagrama de Classes com informações visando uma implementação Orientada

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

Especificação do 3º Trabalho

Especificação do 3º Trabalho Especificação do 3º Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação,

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

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

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio 32 3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio Este capítulo apresenta o framework orientado a aspectos para monitoramento e análise de processos de negócio

Leia mais

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

SISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária SISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária Cascavel Novembro de 2009 Pedro Patitucci Finamore Daniel Bordignon Cassanelli Marco Antonio da Rosa DIAGRAMAS DE CLASSE E SEQUÊNCIA

Leia mais

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA RESUMO Ricardo Della Libera Marzochi A introdução ao Service Component Architecture (SCA) diz respeito ao estudo dos principais fundamentos

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

César Cruz Proprietário [18/04]

César Cruz Proprietário [18/04] César Cruz Proprietário [18/04] Quais devem ser as áreas gerenciadas pelo sistema? O sistema deve ter controle de estoque, ordem de serviços, orçamentos, entradas e saídas, tanto do caixa como de estoque,

Leia mais

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados.

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados. 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 Hoje é

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

BANCO DE DADOS. Fixação dos conteúdos Integridade Referencial Normalização Exercícios

BANCO DE DADOS. Fixação dos conteúdos Integridade Referencial Normalização Exercícios BANCO DE DADOS Fixação dos conteúdos Integridade Referencial Normalização Exercícios BANCO DE DADOS X SGBD Banco de Dados: Um "banco de dados" pode ser definido como um conjunto de "dados" devidamente

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

Persistência de Dados

Persistência de Dados Persistência de s Universidade do Estado de Santa Catarina - Udesc Centro de Ciências Tecnológicas - CCT Departamento de Ciência da Computação Tecnologia de Sistemas de Informação Estrutura de s II - DAD

Leia mais

Especificação do Trabalho

Especificação do Trabalho Especificação do Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação, ligação,

Leia mais

Processo de Controle das Reposições da loja

Processo de Controle das Reposições da loja Processo de Controle das Reposições da loja Getway 2015 Processo de Reposição de Mercadorias Manual Processo de Reposição de Mercadorias. O processo de reposição de mercadorias para o Profit foi definido

Leia mais

Orientação a Objetos

Orientação a Objetos Orientação a Objetos 1. Sobrecarga (Overloading) Os clientes dos bancos costumam consultar periodicamente informações relativas às suas contas. Geralmente, essas informações são obtidas através de extratos.

Leia mais

Implementação de Classe e Auto-Relacionamento em Java

Implementação de Classe e Auto-Relacionamento em Java UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Implementação de Classe e Auto-Relacionamento em Java 1)Introdução Um modelo de Diagrama de Classes representa a estrutura definida

Leia mais

Dadas a base e a altura de um triangulo, determinar sua área.

Dadas a base e a altura de um triangulo, determinar sua área. Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares

Leia mais

ARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo.

ARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo. Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 8 ARRAYS Introdução Até agora, utilizamos variáveis individuais. Significa que uma variável objeto

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

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de Software AULA NÚMERO: 10 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir os conceitos de coesão e acoplamento. DESENVOLVIMENTO Projetar

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

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

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Ementa Introdução a Banco de Dados (Conceito, propriedades), Arquivos de dados x Bancos de dados, Profissionais de Banco de dados,

Leia mais

Disciplina: Unidade III: Prof.: E-mail: Período:

Disciplina: Unidade III: Prof.: E-mail: Período: Encontro 08 Disciplina: Sistemas de Banco de Dados Unidade III: Modelagem Lógico de Dados Prof.: Mario Filho E-mail: pro@mariofilho.com.br Período: 5º. SIG - ADM Relembrando... Necessidade de Dados Projeto

Leia mais

Curso de Aprendizado Industrial Desenvolvedor WEB

Curso de Aprendizado Industrial Desenvolvedor WEB Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos II Professor: Cheli dos S. Mendes da Costa Servidor de Aplicações WEB Tomcat Servidor Tomcat Foi desenvolvido

Leia mais

Figura 1. A Classe Java

Figura 1. A Classe Java 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

Leia mais

SQL. Curso Prático. Celso Henrique Poderoso de Oliveira. Novatec

SQL. Curso Prático. Celso Henrique Poderoso de Oliveira. Novatec SQL Curso Prático Celso Henrique Poderoso de Oliveira Novatec 1 Introdução Desde o início da utilização dos computadores, sabemos que um sistema é feito para aceitar entrada de dados, realizar processamentos

Leia mais

ESTUDO DE CASO WINDOWS VISTA

ESTUDO DE CASO WINDOWS VISTA ESTUDO DE CASO WINDOWS VISTA História Os sistemas operacionais da Microsoft para PCs desktop e portáteis e para servidores podem ser divididos em 3 famílias: MS-DOS Windows baseado em MS-DOS Windows baseado

Leia mais

2 a Lista de Exercícios

2 a Lista de Exercícios Projeto de Sistemas 2011/2 2 a Lista de Exercícios (1) Um importante aspecto do projeto da camada de Lógica de Negócio (LN) diz respeito à organização das classes e distribuição de responsabilidades entre

Leia mais

Documento de Arquitetura

Documento de Arquitetura Documento de Arquitetura A2MEPonto - SISTEMA DE PONTO ELETRÔNICO A2MEPonto - SISTEMA DE PONTO ELETRÔNICO #1 Pág. 1 de 11 HISTÓRICO DE REVISÕES Data Versão Descrição Autor 28/10/2010 1 Elaboração do documento

Leia mais

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1. Universidade Federal de Santa Maria Curso de Arquivologia Disciplina de Banco de Dados Aplicados à Arquivística Prof. Andre Zanki Cordenonsi Versao 1.0 Março de 2008 Tópicos Abordados Conceitos sobre Banco

Leia mais

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

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões Prof. MSc. Hugo Souza Se você precisar manter informações sobre seus usuários enquanto eles navegam pelo seu site, ou até quando eles saem

Leia mais

Programação Concorrente em java - Exercícios Práticos Abril 2004

Programação Concorrente em java - Exercícios Práticos Abril 2004 Programação Concorrente em java - Exercícios Práticos Abril 2004 1. Introdução As threads correspondem a linhas de controlo independentes no âmbito de um mesmo processo. No caso da linguagem JAVA, é precisamente

Leia mais

Uma Abordagem sobre Mapeamento Objeto Relacional com Hibernate

Uma Abordagem sobre Mapeamento Objeto Relacional com Hibernate Uma Abordagem sobre Mapeamento Objeto Relacional com Hibernate Luis Gustavo Zandarim Soares 1, Késsia Rita da Costa Marchi 1 1 Universidade Paranaense (Unipar) Paraná PR Brasil luisgustavo@live.co.uk,

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

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

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel Ambiente de Desenvolvimento Orientação a Objetos É uma técnica de desenvolvimento de softwares que consiste em representar os elementos do mundo

Leia mais

Java para Desenvolvimento Web

Java para Desenvolvimento Web Java para Desenvolvimento Web Servlets A tecnologia Servlet foi introduzida pela Sun Microsystems em 1996, aprimorando e estendendo a funcionalidade e capacidade de servidores Web. Servlets é uma API para

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

Aula 01 - Formatações prontas e condicionais. Aula 01 - Formatações prontas e condicionais. Sumário. Formatar como Tabela

Aula 01 - Formatações prontas e condicionais. Aula 01 - Formatações prontas e condicionais. Sumário. Formatar como Tabela Aula 01 - Formatações prontas e Sumário Formatar como Tabela Formatar como Tabela (cont.) Alterando as formatações aplicadas e adicionando novos itens Removendo a formatação de tabela aplicada Formatação

Leia mais

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 02 Análise e Projeto OO Edirlei Soares de Lima Análise A análise modela o problema e consiste das atividades necessárias para entender

Leia mais

ATRIBUTOS PRIVADOS 6. ENCAPSULAMENTO MÉTODOS PRIVADOS MÉTODOS PRIVADOS

ATRIBUTOS PRIVADOS 6. ENCAPSULAMENTO MÉTODOS PRIVADOS MÉTODOS PRIVADOS ATRIBUTOS PRIVADOS Podemos usar o modificador private, para tornar um atributo privado, obtendo um controle centralizado Definimos métodos para implementar todas as lógicas que utilizam ou modificam o

Leia mais

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

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Uso do SQLite no Android Professor: Danilo Giacobo OBJETIVOS DA AULA Aprender a persistir dados utilizando o banco de dados SQLite. Conhecer e utilizar a classe SQLiteOpenHelper.

Leia mais

AULA 1 Iniciando o uso do TerraView

AULA 1 Iniciando o uso do TerraView 1.1 AULA 1 Iniciando o uso do TerraView Essa aula apresenta a interface principal do TerraView e sua utilização básica. Todos os arquivos de dados mencionados nesse documento são disponibilizados junto

Leia mais

Relacionamentos entre objetos. Relacionamentos entre objetos. Relacionamentos entre objetos. Relacionamentos entre objetos

Relacionamentos entre objetos. Relacionamentos entre objetos. Relacionamentos entre objetos. Relacionamentos entre objetos Programação Orientada a Objetos Relacionamentos entre objetos Associação, composição e agregação Construtores e sobrecarga Variáveis de classe e de instância Reinaldo Gomes reinaldo@cefet-al.br Objetos

Leia mais

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

Laboratório de Banco de Dados Aula 1 Acesso a Banco de Dados. Prof. Josenildo Silva jcsilva@ifma.edu.br 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

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

Técnicas de Programação II

Técnicas de Programação II Técnicas de Programação II Aula 06 Orientação a Objetos e Classes Edirlei Soares de Lima Orientação a Objetos O ser humano se relaciona com o mundo através do conceito de objetos.

Leia mais

CURSO DE PROGRAMAÇÃO EM JAVA

CURSO DE PROGRAMAÇÃO EM JAVA CURSO DE PROGRAMAÇÃO EM JAVA Introdução para Iniciantes Prof. M.Sc. Daniel Calife Índice 1 - A programação e a Linguagem Java. 1.1 1.2 1.3 1.4 Linguagens de Programação Java JDK IDE 2 - Criando o primeiro

Leia mais

CONVENÇÃO DE CÓDIGO JAVA

CONVENÇÃO DE CÓDIGO JAVA CONVENÇÃO DE CÓDIGO JAVA Eligiane Ceron - Abril de 2012 Versão 1.0 Conteúdo Considerações iniciais... 2 Introdução... 2 Extensão de arquivos... 2 Arquivos de código Java... 2 Comentários iniciais... 2

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

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor

Leia mais

INF 2125 PROJETO DE SISTEMAS DE SOFTWARE Prof. Carlos J. P. de Lucena

INF 2125 PROJETO DE SISTEMAS DE SOFTWARE Prof. Carlos J. P. de Lucena INF 2125 PROJETO DE SISTEMAS DE SOFTWARE Prof. Carlos J. P. de Lucena Trabalho Experimental Sistema de Gestão Hoteleira 1. Objetivo Este trabalho tem o objetivo de consolidar o conhecimento sobre UML e

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

gerenciamento de portais e websites corporativos interface simples e amigável, ágil e funcional não dependendo mais de um profissional especializado

gerenciamento de portais e websites corporativos interface simples e amigável, ágil e funcional não dependendo mais de um profissional especializado O NetPublisher é um sistema de gerenciamento de portais e websites corporativos (intranets ou extranets), apropriado para pequenas, médias e grandes empresas. O conteúdo do website pode ser atualizado

Leia mais

Noções de. Microsoft SQL Server. Microsoft SQL Server

Noções de. Microsoft SQL Server. Microsoft SQL Server Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados

Leia mais

Oficina. Praça das Três Caixas d Água Porto Velho - RO

Oficina. Praça das Três Caixas d Água Porto Velho - RO Oficina Praça das Três Caixas d Água Porto Velho - RO Oficina Ministrante: Marcel Leite Rios Apresentação Pessoal Marcel Leite Rios Prof. de Informática IFRO Graduado: Sistemas de Informação - ULBRA MBA

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

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

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

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA RESUMO DE AULA CRIAÇÃO E MANIPULAÇÃO DO BANCO DE DADOS

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

PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO 5. Tratamento de Exceções Introdução e conceitos Capturando exceção usando

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

Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL

Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL Programação Orientada a Objetos com PHP & MySQL Sistema Gerenciador de Banco de Dados: Introdução e configuração de bases de dados com Postgre e MySQL Prof. MSc. Hugo Souza Iniciando nossas aulas sobre

Leia mais

DESENVOLVIMENTO DE SOFTWARE. Introdução ao Visual Studio VB.Net. Programação Estruturada. Prof. Celso Candido ADS / REDES / ENGENHARIA

DESENVOLVIMENTO DE SOFTWARE. Introdução ao Visual Studio VB.Net. Programação Estruturada. Prof. Celso Candido ADS / REDES / ENGENHARIA Introdução ao Visual Studio VB.Net Programação Estruturada 1 Nesse momento inicial não iremos programar em VB.Net, usando o Visual Studio, mas conhecer alguns comandos e variáveis usadas em uma linguagem

Leia mais

Apesar de existirem diversas implementações de MVC, em linhas gerais, o fluxo funciona geralmente da seguinte forma:

Apesar de existirem diversas implementações de MVC, em linhas gerais, o fluxo funciona geralmente da seguinte forma: 1 Introdução A utilização de frameworks como base para a construção de aplicativos tem sido adotada pelos desenvolvedores com três objetivos básicos. Primeiramente para adotar um padrão de projeto que

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

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

Documentação Usando o Javadoc

Documentação Usando o Javadoc Documentação Usando o Javadoc Prof. MSc. João Carlos Pinheiro jcpinheiro@cefet-ma.br Versão 2.1 Última Atualização: 04/2005 1 Comentários e Documentação Comentários em Java Existem três tipos de comentários

Leia mais

RevISTa: Publicação técnico-científica do IST-Rio. nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

RevISTa: Publicação técnico-científica do IST-Rio. nº 05 Data: Dezembro / 2012 ISSN 2178-5589. Tutorial de Instalação e Uso do Eclipse Alexandre V. S. Lage, Caio de O. Leal, Eduardo A. F. da Silva, Felipe C. C. Trindade, Gutierre da C. Oliveira e Miguel G. P. de Carvalho. INTRODUÇÃO O Eclipse (2012)

Leia mais