RELACIONAMENTOS ENTRE OS OBJETOS NO FRAMEWORK HIBERNATE Elio Lovisi Filho 1 Ronney Moreira de Castro 2 RESUMO
|
|
- Natan Dreer Sequeira
- 8 Há anos
- Visualizações:
Transcrição
1 Revista Eletrônica da Faculdade Metodista Granbery - ISSN Curso de Sistemas de Informação - N. 10, JAN/JUN 2011 RELACIONAMENTOS ENTRE OS OBJETOS NO FRAMEWORK HIBERNATE Elio Lovisi Filho 1 Ronney Moreira de Castro 2 RESUMO Este artigo apresenta a implementação de relacionamentos no framework Hibernate, em duas diferentes situações. São apresentadas técnicas e as ferramentas empregadas neste desenvolvimento, em especial o framework Hibernate, a IDE NetBeans, bem como os resultados obtidos durante a realização do processo. PALAVRAS-CHAVE: HIBERNATE, RELACIONAMENTOS, NETBEANS, JAVA ABSTRACT This article presents the implementation of relationships in Hibernate Framework in two different situations. Techniques and the tools used are presented in this development, especially the Hibernate framework, the NetBeans IDE, and the results obtained during the development process. KEY-WORDS: HIBERNATE, RELATIONSHIPS, NETBEANS, JAVA 1 - Mestre em Informática pelo Instituto Tecnológico de Aeronáutica, Professor do curso de Sistemas de Informação da Faculdade Metodista Granbery e do curso de Redes de Computadores da Faculdade Estácio de Sá, e ainda, Analista de Sistemas da Prefeitura de Juiz de Fora. eliolovisi.professor@gmail.com 2 - Mestrando em Ciência da Computação pala Universidade Federal de Viçosa, Professor do curso de Sistemas de Informação da Faculdade Metodista Granbery e Analista de Sistemas da Prefeitura de Juiz de Fora. ronneymc@gmail.com
2 1. INTRODUÇÃO O framework Hibernate fornece ferramentas que permitem o mapeamento objetorelacional (Object-relational mapping ORM) com o objetivo principal de possibilitar que os objetos de uma determinada aplicação sejam mapeados em entidades de uma base de dados relacional. Este framework pode ser utilizado em programas implementados na linguagem Java, possuindo também uma versão para.net chamada NHibernate [Bauer e King 2007]. Como o Hibernate é um framework para mapeamento objeto-relacional, ele também deve oferecer suporte para as associações e heranças entre as classes, permitindo também a realização da correspondência das mesmas com relacionamentos entre as tabelas. Sendo assim, o Hibernate permite a realização de diferentes tipos de associações entre as classes, como: um-para-um; um-para-muitos; e muitos-para-muitos. Além disso, pode-se também utilizar a herança no modelo de classes do sistema. Neste artigo, apresenta-se um tutorial sobre a implementação de relacionamentos no framework Hibernate. Para permitir o melhor entendimento, será utilizado como exemplo o software apresentado no artigo de Lovisi e Castro (2009), acrescentando-se ao mesmo uma associação um-para-muitos e uma herança. A aplicação original permite apenas a manutenção de departamentos. Para exemplificar os relacionamentos serão acrescentadas duas novas funcionalidades: a manutenção de funcionários e de departamentos especiais. As ferramentas empregadas no desenvolvimento deste tutorial foram: a IDE NetBeans 6.9, disponível em e o framework Hibernate versão 3.6.1, que pode ser obtido em Nos próximos itens serão apresentadas as atividades realizadas para a implementação das funcionalidades citadas. Apresenta-se o código das classes das camadas model, view, control e DAO necessárias para o desenvolvimento do aplicativo. 2. CRIAÇÃO DE NOVAS TABELAS Até então, o sistema utilizado no exemplo possui somente a tabela Departamento. Para apresentar a utilização de relacionamentos, serão criadas as tabelas Funcionário e 2
3 Departamento Especial, onde um funcionário pertence a um departamento, e um departamento pode ter vários funcionários. Para tanto, deve-se criar as tabelas utilizando o seguinte script SQL CREATE TABLE `funcionario` ( `id` int(11) NOT NULL AUTO_INCREMENT, `cargo` varchar(60) DEFAULT NULL, `datanascimento` date DEFAULT NULL, `nome` varchar(60) DEFAULT NULL, `departamento` int(11) DEFAULT NULL, PRIMARY KEY (`id`), FOREIGN KEY (`departamento`) REFERENCES `departamento` (`id`) ) ENGINE=InnoDB ; CREATE TABLE `departamentoespecial` ( `id` int(11) NOT NULL, `caracteristica` varchar(60) default NULL, PRIMARY KEY (`id`), CONSTRAINT `departamentoespecial_ibfk_1` FOREIGN KEY (`id`) REFERENCES `departamento` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION ) ENGINE=InnoDB; 3. CRIAÇÃO DA CLASSE FUNCIONÁRIO Na aplicação Java, deve-se criar uma nova classe chamada Funcionário no pacote model. Esta classe será empregada para exemplificar uma associação um-para-muitos com a classe Departamento, devendo ter os seguintes atributos: id do tipo Integer; cargo do tipo String; datanascimento do tipo Date (java.util.date); nome do tipo String; e departamento da classe Departamento. Encapsule os atributos e crie um construtor para a classe. Finalmente, acrescente as anotações nos atributos conforme o fragmento de código abaixo e importe os pacotes necessários. 2. public class Funcionario implements Serializable { 3
4 (strategy=generationtype.identity) 6. private Integer id; 7. private String nome; 8. private String cargo; 10. private Date datanascimento; 13. private Departamento departamento; Na linha 1 do código acima, deve-se observar que a define que a classe Funcionário corresponde a uma tabela de mesmo nome. Já na linha 3, a define que o campo é chave e a (linha 11) define o relacionamento entre as tabelas, por meio do atributo definido (linha 11). Além disso, sobrescreva o método tostring() da classe funcionário da seguinte forma: 1. public String tostring() { 2. return this.getnome(); 3. } 4. CRIAÇÃO DAS CLASSES DAO E CONTROLADORA DO FUNCIONARIO No pacote DAO, criar uma nova classe chamada DAOFuncionario, a qual herda de DAOGenerico, com um construtor próprio. Lembre-se que as classes DAO devem permitir o acesso da aplicação ao banco de dados, e que os métodos da classe DAOGenerico já implementam genericamente as operações básicas de acesso aos dados [Richardson 2007]. Agora, no pacote control, crie uma nova classe chamada CtrManterFuncionario, com um contrutor próprio. Acrescente o código abaixo à nova classe. 1. DAOFuncionario acessohibernatefunc = new DAOFuncionario(); public int gravarfuncionario(funcionario funcionario) { 4. try { 5. acessohibernatefunc.gravar(funcionario); 6. return 1; 7. } catch (HibernateException e) { 8. return 2; 9. } 10. } public List carregarfuncionarios() { 4
5 13. try { 14. return acessohibernatefunc.carregartudoordenado (Funcionario.class, "nome"); 15. } catch (HibernateException e) { 16. return null; 17. } 18. } 19. public boolean excluirfuncionario(funcionario funcionario) { 20. try { 21. acessohibernatefunc.excluir(funcionario); 22. return true; 23. } catch (HibernateException e) { 24. return false; 25. } 26. } public boolean alterarfuncionario(funcionario funcionario) { 29. try { 30. acessohibernatefunc.alterar(funcionario); 31. return true; 32. } catch (HibernateException e) { 33. return false; 34. } 35. } Os métodos acima permitem a realização das operações básicas (gravar, excluir, alterar e carregar) para os objetos da classe Funcionário, chamando os métodos que estão implementados na classe DAO. Agora, no método criasessionfactory() da classe HibernateConfiguracao altere o código conforme apresentado a seguir. 1. if (sessionfactory == null) { 2. AnnotationConfiguration cfg = new AnnotationConfiguration(); 3. cfg.addannotatedclass(departamento.class); 4. cfg.addannotatedclass(funcionario.class); 5. sessionfactory = cfg.buildsessionfactory(); 6. } Observe que a linha 4 foi incluída no código, permitindo que o framework carregue as configurações da classe Funcionario. 5. CRIAÇÃO DO FORMULÁRIO DE FUNCIONÁRIOS Agora, no pacote view, crie um novo formulário Jframe (FrmManterFuncionario) de acordo com a próxima figura. 5
6 Figura 1: Tela de Manutenção de Funcionários Observe que o nome dos componentes do formulário devem ser os seguintes: Lista de funcionários: jlstfuncionarios; Texto para o nome do funcionário: jtxtnome; Texto para o cargo do funcionário: jtxtcargo; Texto com máscara (JFormattedTextField) para a data de nascimento do funcionário: jtxtdatanascimento; Combo para listagem de departamentos: jcbxdepartamento; Botão para inclusão: jbtnincluir; Botão para exclusão: jbtnexcluir; Botão para alteração: jbtnalterar. Para a lista de funcionários e a combo de departamentos, a propriedade model deve ser vazia. O campo data de nascimento é do tipo Date. Logo, deve-se apresentar uma máscara no mesmo para que seja inserido o dado. Para tanto, selecione o campo texto e altere sua propriedade Pre-Init Code conforme a próxima figura. 6
7 Figura 2: Pre-Init Code do campo Data de Nascimento Nesta propriedade inclua o código a seguir: 1. MaskFormatter mascara; 2. try { 3. mascara = new MaskFormatter("##/##/####"); 4. mascara.setvalidcharacters(" "); 5. mascara.install(jtxtdatanascimento); 6. } catch(exception ex) { 7. ex.printstacktrace(); 8. } 9. jtxtdatanascimento.updateui(); O código anterior acrescenta uma máscara ao campo data de nascimento, no formato dia/mês/ano, aceitando somente números, conforme pode ser visto nas linhas 3 e 4. 7
8 Agora acesse o código do formulário e inclua os seguintes atributos fazendo as importações necessárias: 1. CtrManterFuncionario ctrmanterfuncionario; 2. CtrManterDepartamento ctrmanterdepartamento; 3. Departamento depart; 4. Funcionario func; 5. SimpleDateFormat df; No evento windowactivated do formulário, inclua o seguinte código, para carregar a lista de funcionários e a combo box de departamentos. 1. //inicia os atributos 2. ctrmanterfuncionario = new CtrManterFuncionario(); 3. ctrmanterdepartamento = new CtrManterDepartamento(); 4. depart = new Departamento(); 5. func = new Funcionario(); DefaultListModel listmodel = new DefaultListModel(); 8. List listfunc = new ArrayList(); listfunc = ctrmanterfuncionario.carregarfuncionarios(); 11. if (listfunc!= null) { 12. Iterator i = listfunc.iterator(); 13. while (i.hasnext()) { 14. Funcionario funclist = (Funcionario) i.next(); 15. listmodel.addelement(funclist); 16. } 17. jlstfuncionarios.setmodel(listmodel); 18. } 19. //carrega combo de departamentos 20. DefaultComboBoxModel modelcombo = new DefaultComboBoxModel(); 21. List listdept = ctrmanterdepartamento.carregardepartamentos(); 22. if (listdept!= null) { 23. Iterator j = listdept.iterator(); 24. while (j.hasnext()) { 25. Departamento deptlist = (Departamento) j.next(); 26. modelcombo.addelement(deptlist); 27. } 28. jcbxdepartamento.setmodel(modelcombo); 29. } 30. //inicializa o formato das datas 31. df = new SimpleDateFormat("dd/MM/yyyy"); 32. df.setlenient(false); Para exibir os dados dos funcionários, implemente o código a seguir no método mouseclicked da lista. 8
9 { 1. //recupera o funcionario selecionado 2. func = (Funcionario) jlstfuncionarios.getselectedvalue(); 3. //apresenta os dados do funcionario 4. if (func!= null) { 5. jtxtnome.settext(func.getnome()); 6. jtxtcargo.settext(func.getcargo()); 7. jtxtdatanascimento.settext(df.format(func.getdatanascimento())); 8. int cont; 9. //apresenta o departamento do funcionario 10. for (cont = 0; cont < jcbxdepartamento.getmodel().getsize(); cont+ +) { 11. if (((Departamento) jcbxdepartamento.getmodel(). getelementat(cont)).getid(). equals (func.getdepartamento().getid())) 12. jcbxdepartamento.setselectedindex(cont); 13. break; 14. } else { 15. JOptionPane.showMessageDialog(null, "Objeto não Encontrado!"); 16. } Ao selecionar-se um funcionário, deve-se exibir o departamento que ele está associado. Isto é feito no código, entre as linhas 10 e 15, onde percorre-se a lista de departamentos e, se o departamento da lista possuir o mesmo atributo id do departamento associado ao funcionário (condição da linha 11), o índice da lista será posicionado neste valor. Finalmente, na página principal crie um botão para carregar o formulário e teste a aplicação. A tela deverá exibir os funcionários cadastrados no banco. Ao selecionar-se um funcionário, serão exibidos os seus dados nos campos texto e no combo. 6. MANTENDO OS DADOS DOS FUNCIONÁRIOS Agora, as funcionalidades de manutenção de dados do usuário (Incluir, Alterar e Excluir) serão adicionadas à aplicação. Para tanto implemente o código a seguir no evento mouseclicked do botão de inclusão. 1. //recupera o departamento selecionado 2. depart = (Departamento) jcbxdepartamento.getselecteditem(); 3. func = new Funcionario(); 4. //atribui os valores 5. func.setnome(jtxtnome.gettext()); 6. func.setcargo(jtxtcargo.gettext()); 7. func.setdepartamento(depart); 8. //valida data 9. try { 10. func.setdatanascimento(df.parse(jtxtdatanascimento.gettext())); 9
10 11. } catch (ParseException ex) { 12. JOptionPane.showMessageDialog(this, "Data Incorreta!"); 13. return; 14. } 15. //inclui objeto 16. if (ctrmanterfuncionario.gravarfuncionario(func) == 1) { 17. JOptionPane.showMessageDialog(this, "Objeto persistido"); 18. } else { 19. JOptionPane.showMessageDialog(this,"Objeto não persistido"); 20. } No código acima, é mostrada a inserção de objetos da classe Funcionário. Na linha 7, é atribuído o Departamento selecionado ao Funcionário, criando a associação. O tratamento adequado desta associação no banco de dados é feito pelo hibernate. Agora, o código a seguir no evento mouseclicked do botão de alteração: 1. //recupera o funcionario e o departamento selecionado 2. func = (Funcionario) jlstfuncionarios.getselectedvalue(); 3. depart = (Departamento) jcbxdepartamento.getselecteditem(); 4. if (func!= null) { 5. //atribui os valores 6. func.setnome(jtxtnome.gettext()); 7. func.setcargo(jtxtcargo.gettext()); 8. func.setdepartamento(depart); 9. //valida data 10. try { 11. func.setdatanascimento(df.parse(jtxtdatanascimento.gettext())); 12. } catch (ParseException ex) { 13. JOptionPane.showMessageDialog(this, "Data Incorreta!"); 14. return; 15. } 16. //altera objeto 17. if (ctrmanterfuncionario.alterarfuncionario(func)) { 18. JOptionPane.showMessageDialog(this, "Objeto persistido"); 19. } else { 20. JOptionPane.showMessageDialog(this, "Objeto não persistido"); 21. } 22. } else { 23. JOptionPane.showMessageDialog(this, "Objeto não localizado"); 24. } E finalmente, o código a seguir no evento mouseclicked do botão de exclusão: 1. //recupera o funcionario selecionado 2. func = (Funcionario) jlstfuncionarios.getselectedvalue(); 3. //exclui o funcionario 4. if (ctrmanterfuncionario.excluirfuncionario(func)) { 5. JOptionPane.showMessageDialog(this, "Objeto excluido"); 6. } else { 7. JOptionPane.showMessageDialog(this, "Objeto não excluido"); 10
11 8. } Execute o programa e observe os resultados. Se desejar, limpe os campos da tela após a inclusão, a alteração e a exclusão do objeto. 7. CRIANDO A CLASSE DEPARTAMENTO ESPECIAL Agora, será mostrada a implementação de herança empregando o framework Hibernate. Para tanto, no pacote model, crie uma nova classe chamada Departamento especial. Esta classe será empregada para exemplificar uma herança com a classe Departamento, devendo ter somente o atributo característica do tipo String e um construtor vazio. O código da classe deverá ser implementado conforme apresentado abaixo. 2. public class DepartamentoEspecial extends Departamento{ 3. private String caracteristica; public DepartamentoEspecial() { 6. } public String getcaracteristica() { 9. return caracteristica; 10. } 11. public void setcaracteristica(string caracteristica) { 12. this.caracteristica = caracteristica; 13. } } Além disso, acrescente a anotação que define a herança na classe Departamento conforme apresentado abaixo e faça as importações necessárias. = InheritanceType.JOINED) 3. public class Departamento implements Serializable{ 4....} Neste exemplo cada classe corresponde a uma tabela. Outros tipos de herança podem ser empregadas, de acordo com o que for definido na [Bauer e King 2007]. 11
12 8. CRIAÇÃO DAS CLASSES DAO E CONTROLADORA DO DEPARTAMENTO ESPECIAL Conforme feito no item 4, no pacote DAO, crie a classe DAODepartamentoEspecial herdando de DAOGenerico, com um construtor próprio. Agora, no pacote control, crie uma nova classe chamada CtrManterDepartamentoEspecial, com um construtor próprio. Acrescente o código abaixo à nova classe. 1. DAODepartamentoEspecial acessohibernatedepto; public CtrManterDepartamentoEspecial( ){ 4. acessohibernatedepto = new DAODepartamentoEspecial(); 5. } 6. public int gravardepartamento( DepartamentoEspecial departamento{ 7. try { 8. acessohibernatedepto.gravar(departamento); 9. return 1; 10. } catch (HibernateException e) { 11. e.printstacktrace(); 12. return 2; 13. } 14. } public List carregardepartamentos() { 17. try { 18. return acessohibernatedepto.carregartudoordenado ( DepartamentoEspecial.class, "nome"); 19. } catch (HibernateException e) { 20. return null; 21. } 22. } 23. public boolean excluirdepartamento( DepartamentoEspecial departamento) { 24. try { 25. acessohibernatedepto.excluir(departamento); 26. return true; 27. } catch (HibernateException e) { 28. e.printstacktrace(); 29. return false; 30. } 31. } public boolean alterardepartamento( DepartamentoEspecial departamento) { 34. try { 35. acessohibernatedepto.alterar(departamento); 36. return true; 12
13 37. } catch (HibernateException e) { 38. e.printstacktrace(); 39. return false; 40. } 41. } Os métodos acima permitem a realização das operações básicas (gravar, excluir, alterar e carregar) para os objetos da classe Departamento Especial. Observe que os métodos são semelhantes àqueles desenvolvidos para os controladores de Departamento e Funcionário. 9. CRIAÇÃO DO FORMULÁRIO DE DEPARTAMENTOS ESPECIAIS Novamente no pacote view, crie um novo formulário Jframe (FrmManterDepartamentoEspecial). Observe que o nome dos componentes do formulário devem ser os seguintes: Lista de departamentos: jlstdepartamentos; Texto para o nome do departamento: jtxtnome; Texto para a área do departamento: jtxtarea; Texto para a característica do departamento: jtxtcaracteristica; Botão para inclusão: jbtnincluir; Botão para exclusão: jbtnexcluir; e Botão para alteração: jbtnalterar. Figura 3: Tela de Manutenção de Departamentos Especiais 13
14 Agora, inclua no formulário os seguintes atributos e faça as importações necessárias. CtrManterDepartamentoEspecial ctrmanterdepartamento; DepartamentoEspecial depart; No evento windowactivated do formulário, inclua o seguinte código. 1. DefaultListModel listmodel = new DefaultListModel(); 2. List listdepartamento = new ArrayList(); 3. ctrmanterdepartamento = new CtrManterDepartamentoEspecial(); 4. depart = new DepartamentoEspecial(); 5. listdepartamento = ctrmanterdepartamento.carregardepartamentos(); 6. if (listdepartamento!= null) { 7. Iterator i = listdepartamento.iterator(); 8. while (i.hasnext()) { 9. Departamento deptlist = (Departamento) i.next(); 10. listmodel.addelement(deptlist); 11. } 12. jlstdepartamentos.setmodel(listmodel); 13. } Para exibir os dados de cada departamento especial selecionado, implemente o código a seguir no método mouseclicked da lista. 1. depart = (DepartamentoEspecial) jlstdepartamentos.getselectedvalue(); 2. if (depart!= null) { 3. jtxtnome.settext(depart.getnome()); 4. jtxtarea.settext(depart.getarea()); 5. jtxtcaracteristica.settext(depart.getcaracteristica()); 6. } else { 7. JOptionPane.showMessageDialog(null, "Objeto não Encontrado!"); 8. } Na página principal crie um botão para carregar o formulário e teste a aplicação. Além disso, incluir o mapeamento da classe Departamento Especial no método criasessionfactory(), conforme a seção MANTENDO OS DADOS DOS DEPARTAMENTOS ESPECIAIS Agora, conforme foi feito para a classe funcionário, serão adicionadas as funcionalidades de manutenção de dados do departamento: Incluir, Alterar e Excluir. Para tanto, implemente o código a seguir no evento mouseclicked do botão de inclusão. 1. depart = new DepartamentoEspecial(); 2. depart.setnome(jtxtnome.gettext()); 3. depart.setarea(jtxtarea.gettext()); 14
15 4. depart.setcaracteristica(jtxtcaracteristica.gettext()); 5. if (ctrmanterdepartamento.gravardepartamento(depart) == 1) { 6. JOptionPane.showMessageDialog(this, "Objeto persistido"); 7. } else { 8. JOptionPane.showMessageDialog(this, "Objeto não persistido"); 9. } A seguir, o código a seguir no evento mouseclicked do botão de alteração. 1. depart = (DepartamentoEspecial) jlstdepartamentos.getselectedvalue(); 2. if (depart!= null) { 3. depart.setnome(jtxtnome.gettext()); 4. depart.setarea(jtxtarea.gettext()); 5. depart.setcaracteristica(jtxtcaracteristica.gettext()); 6. if (ctrmanterdepartamento.alterardepartamento(depart)) { 7. JOptionPane.showMessageDialog(this, "Objeto persistido"); 8. } else { 9. JOptionPane.showMessageDialog(this, "Objeto não persistido"); 10. } 11. } else { 12. JOptionPane.showMessageDialog(this, "Objeto não localizado"); 13. } E finalmente, o código a seguir no evento mouseclicked do botão de exclusão: 1. depart = (DepartamentoEspecial) jlstdepartamentos.getselectedvalue(); 2. if (depart!= null) { 3. if (ctrmanterdepartamento.excluirdepartamento(depart)) { 4. JOptionPane.showMessageDialog(null, "Objeto Excluído"); 5. } else { 6. JOptionPane.showMessageDialog(null, "Objeto não excluído"); 7. } 8. } else { 9. JOptionPane.showMessageDialog(null, "Selecione o Objeto"); 10. } Novamente, se desejar limpe os campos da tela após a inclusão, a alteração e a exclusão do objeto. 11. CONSIDERAÇÕES FINAIS Neste artigo foi apresentado um tutorial sobre a implementação de relacionamentos no framework Hibernate, acrescentando-se a uma aplicação existente uma associação um-para-muitos e uma herança. A utilização do framework Hibernate permite o mapeamento objeto-relacional, possibilitando uma implementação mais simples de relacionamentos entre as classes. Propõe-se a aplicação, em trabalhos futuros, da ferramenta apresentada para o desenvolvimento de aplicações em outras plataformas, em especial, para softwares Web. 15
16 Além disso, pode-se aplicar a refatoração nas classes da aplicação melhorando a qualidade do código desenvolvido. 12. REFERÊNCIAS BIBLIOGRÁFICAS BAUER, Christian; KING Gavin.Java Persistence com Hibernate. 1ª ed. Rio de Janeiro: Ciência Moderna p. LOVISI FILHO, Elio; CASTRO, Gustavo Mendes. Tutorial sobre a Construção de Aplicações empregando Java, Hibernate e MySql. Revista Eletrônica da Faculdade Metodista Granbery - N. 6, JAN/JUN Disponível em: < Acesso em: 21 jan RICHARDSON, Chris. POJOS em Ação - Como Desenvolver aplicações Corporativas com Frameworks Leves. 1ª ed. Rio de Janeiro: Ciência Moderna p. 16
TUTORIAL SOBRE A CONSTRUÇÃO DE APLICAÇÕES EMPREGANDO JAVA, HIBERNATE E MySQL
Revista Eletrônica da Faculdade Metodista Granbery http://re.granbery.edu.br - ISSN 1981 0377 Curso de Sistemas de Informação - N. 6, JAN/JUN 2009 TUTORIAL SOBRE A CONSTRUÇÃO DE APLICAÇÕES EMPREGANDO JAVA,
Leia maisruirossi@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 maisJPA: 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 maisAULA 8 CRIANDO UMA CLASSE EM PHP INTERAGINDO COM BANCO DE DADOS - COM RELACIONAMENTO ENTRE TABELAS
AULA 8 CRIANDO UMA CLASSE EM PHP INTERAGINDO COM BANCO DE DADOS - COM RELACIONAMENTO ENTRE TABELAS Na grande maioria dos sistemas, faz-se necessário utilizar informações que estão armazenadas em uma determinada
Leia maisColeções. Conceitos e Utilização Básica. c Professores de ALPRO I 05/2012. Faculdade de Informática PUCRS
Coleções Conceitos e Utilização Básica c Professores de ALPRO I Faculdade de Informática PUCRS 05/2012 ALPRO I (FACIN) Coleções: Básico 05/2012 1 / 41 Nota Este material não pode ser reproduzido ou utilizado
Leia maisPersistê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 maisComo 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 maisHIBERNATE 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 maisListando itens em ComboBox e gravando os dados no Banco de Dados MySQL.
Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2012 Edição 7 Listando e Gravando Listando itens em ComboBox e gravando os dados no
Leia maisHibernate. 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 maisJDBC 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 maisRoteiro 9 - SQL Básico: chave estrangeira, operadores de comparação e operadores booleanos
Roteiro 9 - SQL Básico: chave estrangeira, operadores de comparação e operadores booleanos Objetivos: Criar restrições para atributos, chaves primárias e estrangeiras; Explorar consultas SQL com uso de
Leia maisResolvendo 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 maisUFG - Instituto de Informática
UFG - Instituto de Informática Curso: Engenharia de Software Arquitetura de Software Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 9 Mapeamento em JPA Introdução O mapeamento objeto-relacional
Leia maisPersistindo 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 maisPersistê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 maisManipulaçã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 maisLeonardo Gresta Paulino Murta leomurta@gmail.com
Leonardo Gresta Paulino Murta leomurta@gmail.com O Que é JDBC? API de acesso a banco de dados relacional do Java Faz uso do driver provido pelo banco de dados Roda SQL (create, insert, update, etc.) no
Leia maisMapeamento 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 maisProgramação Orientada a Objetos no C#.NET usando Padrões de Projeto MARCELO SANTOS DAIBERT E MARCO ANTÔNIO PEREIRA ARAÚJO
POO Programação Orientada a Objetos no C#.NET usando Padrões de Projeto MARCELO SANTOS DAIBERT E MARCO ANTÔNIO PEREIRA ARAÚJO Marcelo Santos Daibert (marcelo@daibert.net) é professor do Curso de Bacharelado
Leia maisBanco de Dados I. Aula 12 - Prof. Bruno Moreno 04/10/2011
Banco de Dados I Aula 12 - Prof. Bruno Moreno 04/10/2011 Plano de Aula SQL Definição Histórico SQL e sublinguagens Definição de dados (DDL) CREATE Restrições básicas em SQL ALTER DROP 08:20 Definição de
Leia maisJDBC. 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 maisJSP - ORIENTADO A OBJETOS
JSP Orientação a Objetos... 2 CLASSE:... 2 MÉTODOS:... 2 Método de Retorno... 2 Método de Execução... 2 Tipos de Dados... 3 Boolean... 3 Float... 3 Integer... 4 String... 4 Array... 4 Primeira:... 4 Segunda:...
Leia maisPHP 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 maisCapítulo 04: Persistência com SQLite
Capítulo 04: Persistência com SQLite Instrutor Programador desde 2000 Aluno de doutorado Mestre em informática pelo ICOMP/UFAM Especialista em aplicações WEB FUCAPI marcio.palheta@gmail.com sites.google.com/site/marcio
Leia maisLinguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery
Linguagem de Programação JAVA Técnico em Informática Professora Michelle Nery Agenda Regras paravariáveis Identificadores Válidos Convenção de Nomenclatura Palavras-chaves em Java Tipos de Variáveis em
Leia maisAULA 6 INTEGRIDADOS DOS DADOS - CRIANDO RESTRIÇÕES
BANCO DE DADOS GERENCIAL 1 AULA 6 INTEGRIDADOS DOS DADOS - CRIANDO RESTRIÇÕES Integridade de domínio A integridade de domínio é a validade de entradas para uma coluna específica. É possível aplicar a integridade
Leia maisAula 2 - Revisão de JPA (Java Persistence API)
Aula 2 - Revisão de JPA (Java Persistence API) Professor: Ricardo Luis dos Santos IFSUL 2015 Tabela para Revisão Assunto (JPA) Interesse? 1 Vantagens e Desvantagens 4 2 Principais Conceitos 7 3 Anotações
Leia maisBANCO DE DADOS BANCO DE DADOS. Prof. Patrícia Lucas 3º Trimestre
BANCO DE DADOS BANCO DE DADOS Prof. Patrícia Lucas 3º Trimestre ROTEIRO PARA O 3º TRIMESTRE 1. O MySQL DDL SQL 1. Como funciona o MySQL 2. Como criar um banco de dados no MySQL 3. Como criar tabelas: comandos
Leia maisMódulo 5 JPATransaction Camadas Turma Turma TurmaBC .business @BusinessController TurmaBC TurmaBC TurmaBC
Módulo 5 No módulo anterior adaptamos nosso projeto para persistir as informações no banco de dados utilizando as facilidades da extensão demoiselle-jpa. Experimentamos o controle transacional do Framework
Leia maisProgramação de Computadores - I. Profª Beatriz Profº Israel
Programação de Computadores - I Profª Beatriz Profº Israel As 52 Palavras Reservadas O que são palavras reservadas São palavras que já existem na linguagem Java, e tem sua função já definida. NÃO podem
Leia mais2008.1. A linguagem SQL
SQL 2008.1 A linguagem SQL SQL - Structured Query Language. Foi definida nos laboratórios de pesquisa da IBM em San Jose, California, em 1974. Teve seus fundamentos no modelo relacional Sua primeira versão
Leia maisOrientaçã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 mais1 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 maisProgramação Orientada a Objetos II
Programação Orientada a Objetos II AULA Banco de Dados (Exemplo) Prof. Rodrigo Rocha Prof.rodrigorocha@yahoo.com (Modo Texto) Conectando ao Banco de Dados Entre no Diretório do Mysql mysql u root p criando
Leia maisDesenvolvimento de Aplicações para Internet Aula 7
Desenvolvimento de Aplicações para Internet Aula 7 Celso Olivete Júnior olivete@fct.unesp.br Classe e tipos de dados Classe Conjunto de objetos semelhantes, isto é, com a mesma estrutura (atributos) e
Leia maisSumário. 1 https://www.mantisbt.org
O presente documento apresenta um manual com os passos necessários para integrar a ferramenta de gerenciamento de mudanças Mantis Bug Tracker (MantisBT) 1 ao plugin GiveMe Trace. Sumário Introdução 2 Criar
Leia maisPersistê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 maisEspecificaçã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 mais2008.1 SQL. Autor: Renata Viegas
SQL Autor: Renata Viegas A linguagem SQL SQL - Structured Query Language. Foi definida nos laboratórios de pesquisa da IBM em San Jose, California, em 1974. Teve seus fundamentos no modelo relacional Sua
Leia maisIntrodução ao SQL. Aécio Costa
Aécio Costa A linguagem SQL é um padrão de linguagem de consulta comercial e possui as seguintes partes: Linguagem de definição de dados (DDL) Linguagem interativa de manipulação de dados (DML) Definição
Leia maisSistema de Controle de Estoque
FACULDADE DE TECNOLOGIA SENAC GOIAS GESTÃO EM TECNOLOGIA DA INFORMÇÃO TÓPICOS AVANÇADOS EM BANCO DE DADOS Professor: Olegário Correia Neto Alunos: Marcelo Gonçalves, Juliano Pirozelli, João Lucas Pecin,
Leia maisComandos DDL. id_modulo = id_m odulo
Comandos DDL Estudo de Caso Controle Acadêmico Simplificado Uma escola contém vários cursos, onde cada aluno possui uma matricula num determinado curso. Estes cursos, por sua vez, possuem módulos, aos
Leia maisCurso 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 maisAPOSTILA 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 maisTécnicas de Programação II
Técnicas de Programação II Aula 03 GUI e Swing Edirlei Soares de Lima GUI Graphical User Interface A API Java fornece diversas classes destinadas a criação de interfaces gráficas.
Leia maisBoletim Técnico. Criação de formulário dinâmico para o módulo WEB. Produto : TOTVS Web, 11.8.0.0
de formulário dinâmico para o módulo WEB Produto : TOTVS Web, 11.8.0.0 Chamado : P118SSTWEB\REQ168 Data da publicação : 17/10/12 País(es) : Brasil Banco(s) de Dados : Oracle Esta melhoria depende de execução
Leia maisC# - Conexão com MySQL
E S T A A P R E S E N T A Ç Ã O F O I E L A B O R A D A COMO M A T E R I A L DE A P O I O À A U L A DO P R O F E S S O R L E O L A R B A C K A O S A L U N O S DA E S C O L A T É C N I C A P O L I M I G.
Leia mais2 Orientação a objetos na prática
2 Orientação a objetos na prática Aula 04 Sumário Capítulo 1 Introdução e conceitos básicos 1.4 Orientação a Objetos 1.4.1 Classe 1.4.2 Objetos 1.4.3 Métodos e atributos 1.4.4 Encapsulamento 1.4.5 Métodos
Leia maisSISTEMA 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 maisPersistê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 maisAula 2. Objetivos. Encapsulamento na linguagem Java; Utilizando a referência this.
Aula 2 Objetivos Encapsulamento na linguagem Java; Utilizando a referência this. Encapsulamento, data hiding é um conceito bastante importante em orientação a objetos. É utilizado para restringir o acesso
Leia maisAULA 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 maisFigura 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 maisJava & Bancos de Dados Adaptado de Slides da Universidade Salgado de Oliveira Goiânia
Java & Bancos de Dados Adaptado de Slides da Universidade Salgado de Oliveira Goiânia Sistemas de Informação Ling.Prog.V Prof. Roberto Couto Lima Fonte: Curso Java Prof. Fabricio Leonard Leopoldino (Universo)
Leia maisJAVA COM BANCO DE DADOS PROFESSORA DANIELA PIRES
Conteúdo O Projeto... 2 Criação de Pacotes... 4 Factory:... 6 DAO:... 15 GUI (Graphical User Interface ou Interface Gráfica de Cadastro)... 18 Evento SAIR... 23 Evento CADASTRAR... 24 1 O Projeto Arquivo
Leia maisStruts 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 maisPodemos agora ver no IDE do Morfik os objetos que já incorporamos ao nosso projeto :
Podemos agora ver no IDE do Morfik os objetos que já incorporamos ao nosso projeto : O form Index A tabela Fotos A query Q_seleção_de_fotos Vide figura 46. Figura 46 O próximo passo é criar um form que
Leia maisDesenvolvendo 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 maisIntegrando 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(1,n) venda. (1,1) realizacao. cliente. (0,n) (1,1) contem. produto. Laboratório de Banco de Dados Exercicios
Laboratório de Banco de Dados Exercicios Modelo conceitual segundo notação de Peter Chen cliente (1,1) realizacao (1,n) venda (0,n) produto (1,1) contem Modelo conceitual gerado pela CASE Dezign for Database
Leia maisProgramaçã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 maisProgramaçã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 maisHibernate Envers Easy Entity Auditing
Hibernate Envers Easy Entity Auditing Auditando suas classes de persistência com Hibernate Envers Castro (@CastroAlexandre) Consultor (Summa) e Instrutor (Globalcode) SCJP, SCWCD, SCBCD, SCEA-I, SCSNI
Leia maisSQL Linguagem de Definição de Dados. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri
SQL Linguagem de Definição de Dados Banco de Dados SQL Structured Query Language Uma das mais importantes linguagens relacionais (se não a mais importante) Exemplos de SGBD que utilizam SQL Oracle Informix
Leia maisPrograma EndNote. Download para teste no site: http://www.endnote.com/endemo.asp. (Atualmente o EndNote está na versão 5x)
Programa EndNote 1. Informações O EndNote é um gerenciador de referências bibliográficas desenvolvido pela Thomson Reuters. O software permite armazenar e organizar as referências encontradas nas buscas
Leia maisLista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição
Lista de Contas Lista de Contas: Assinatura null Quais são os métodos necessários? class ListaDeContas { void inserir (Conta c) { void retirar (Conta c) { Conta procurar (String num) { Listas de Contas:
Leia maisJava 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 maisSQL. Definição do Esquema da Base de Dados. Cristina C. Vieira Departamento de Engenharia Eletrónica e Informática
SQL Definição do Esquema da Base de Dados Cristina C. Vieira Departamento de Engenharia Eletrónica e Informática SQL - Esquema da base de dados Definição das tabelas Definição das chaves primárias Definição
Leia maisUFG - 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 maisAULA 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 maisEspecificaçã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 maisTé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 maisPHP Programando com Orientação a Objetos
PHP Programando com Orientação a Objetos 2 a edição Pablo Dall Oglio Novatec Sumário Sobre o autor... 13 Agradecimentos... 14 Nota do autor... 16 Organização do livro... 18 Capítulo 1 Introdução ao PHP...
Leia maisSistema de Recursos Humanos
Sistema de Recursos Humanos Projeto 1 O objetivo desse sistema é gerenciar a admissão e a demissão de funcionários. Esse funcionário pode ou não ter dependentes. Esse funcionário está alocado em um departamento
Leia maisArquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC
Arquitetura de Aplicações JSP/Web Padrão Arquitetural MVC Arquitetura de Aplicações JSP/Web Ao projetar uma aplicação Web, é importante considerála como sendo formada por três componentes lógicos: camada
Leia maisProgramação para Android. Aula 06: Activity, menus e action bar
Programação para Android Aula 06: Activity, menus e action bar Activity A classe Activity é quem gerencia a interface com o usuário. Ela quem recebe as requisições, as trata e processa. Na programação
Leia maisIntrodução à Programação. Interface, Polimorfismo e Dynamic Binding
Introdução à Programação Interface, Polimorfismo e Dynamic Binding Interface Programador Java PLENO Possuir sólida experiência em programação Desenvolvimento na linguagem JAVA Webservice, Struts ou JSF(desejável)
Leia maisCONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS. João Gabriel Ganem Barbosa
CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS João Gabriel Ganem Barbosa Sumário Motivação História Linha do Tempo Divisão Conceitos Paradigmas Geração Tipos de Dados Operadores Estruturada vs
Leia maisNetBeans. Conhecendo um pouco da IDE
NetBeans Conhecendo um pouco da IDE Professor: Edwar Saliba Júnior Sumário Apresentação:...1 Criando Um Novo Projeto de Software:...1 Depurando Um Código-fonte:...4 Entendendo o Código-fonte:...7 Dica
Leia maisJava. 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 maisDESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES
DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.
Leia maisClasses de Entidades Persistentes JDB
Classes de Entidades Persistentes JDB Brasil, Natal-RN, 07 de setembro de 2011 Welbson Siqueira Costa www.jdbframework.com Nota de Retificação: em 11/12/2011 a Listagem 3 desse tutorial sofreu uma pequena
Leia maisUFG - Instituto de Informática
UFG - Instituto de Informática Curso: Sistemas de Informações Arquitetura de Software Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 7 JPA A Persistência com JPA Para configurar o JPA
Leia maisExercício 1 : As classes abaixo serão utilizadas neste exercício: public class Ponto { int x; int y; public Ponto(int x, int y){ this.
Exercício 1 : As classes abaixo serão utilizadas neste exercício: public class Ponto { int x; int y; public Ponto(int x, int y){ this.x = x; this.y = y; public String tostring(){ return "(" + x + "," +
Leia maisMANUAL DE NORMAS PARA DESENVOLVIMENTO DE CÓDIGO DA FÁBRICA VIRTUAL DE SOFTWARE DA FIPP. Curso Superior de Tecnologia em Sistemas para Internet 2/2014
MANUAL DE NORMAS PARA DESENVOLVIMENTO DE CÓDIGO DA FÁBRICA VIRTUAL DE SOFTWARE DA FIPP Curso Superior de Tecnologia em Sistemas para Internet 2/2014 1. Nomes e localização dos arquivos do projeto: O template
Leia maisDesenvolvimento de aplicação web com framework JavaServer Faces e Hibernate
Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Tiago Peres Souza 1, Jaime Willian Dias 1,2 ¹Universidade paranaense (Unipar) Paranavaí PR Brasil tiagop_ti@hotmail.com 2 Universidade
Leia maisCriando uma agenda simples com NetBeans 6.5
Criando uma agenda simples com NetBeans 6.5 (Swing application framework e Beansbinding) Já faz algum tempo que escrevi uma agenda simples usando o Eclipse com o Visual Class Editor. Demorei em torno de
Leia maisRESUMO DE CATALOGAÇÃO
RESUMO DE CATALOGAÇÃO CLASSIFICAÇÃO DISTINTA Contatos: Cirineo Zenere (c.zenere@pucpr.br) Eulália M. Soares (eulalia.soares@pucpr.br) Josilaine O. Cezar (josilaine.cezar@pucpr.br) SUMÁRIO INICIANDO A CATALOGAÇÃO...2
Leia maisPROGRAMAÇÃ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 maisCapítulo 14. Herança a e Polimorfismo. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra
Capítulo 14 Herança a e Polimorfismo Objetivos do Capítulo Apresentar os conceitos de herança e de polimorfismo. Explorar os diversos recursos disponíveis no Java para a aplicação da herança e do polimorfismo
Leia maisQualiQuantiSoft Versão 1.3c
QualiQuantiSoft Versão 1.3c Qualiquantisoft v1.3c Pág.: 1/15 Índice Apresentação do programa... 3 Funções operacionais do programa... 3 Itens de menu... 6 Teclas de atalho... 6 Instrumento de Análise de
Leia maisAprenda como instalar o plugin EclipseUML no Eclipse e como utilizá-lo para fazer engenharia reversa de seu código-fonte.
Omondo EclipseUML Ricardo Rodrigues Lecheta Aprenda como instalar o plugin EclipseUML no Eclipse e como utilizá-lo para fazer engenharia reversa de seu código-fonte. Introdução Neste tutorial será apresentado
Leia maisARQUITETURA SISGRAD. Manual de Utilização. Versão: 2.0. Criação: 05 de julho de 2007 Autor: André Penteado
ARQUITETURA SISGRAD Manual de Utilização Versão: 2.0 Criação: 05 de julho de 2007 Autor: André Penteado Última Revisão: 09 de outubro de 2009 Autor: Alessandro Moraes Controle Acadêmico - Arquitetura SISGRAD
Leia maisJava 2 Standard Edition Como criar classes e objetos
Java 2 Standard Edition Como criar classes e objetos Helder da Rocha www.argonavis.com.br 1 Assuntos abordados Este módulo explora detalhes da construção de classes e objetos Construtores Implicações da
Leia maisIntrodução. Servidor de Tempo (SNTP) com opção de horário de verão automático; 1 Cadastro do novo modelo de equipamento Urano Topmax SS
Urano Indústria de Balanças e Equipamentos Eletrônicos Ltda. Rua Irmão Pedro 709 Vila Rosa Canoas RS Fone: (51) 3462.8700 Fax: (51) 3477.4441 Guia de Novas Funcionalidades Urano Integra 2.3 Data: 15/04/2015
Leia maisO programa abaixo exemplifica o uso da classe Image para carregar e mostrar uma imagem localizada em um arquivo.
7. Carregando e mostrando imagens locais Esta aula complementa os estudos de programação de interfaces gráficas em Java mostrando como podemos carregar imagens de arquivos locais ou da Internet para uso
Leia maisMódulo 06 Desenho de Classes
Módulo 06 Desenho de Classes Última Atualização: 13/06/2010 1 Objetivos Definir os conceitos de herança, polimorfismo, sobrecarga (overloading), sobreescrita(overriding) e invocação virtual de métodos.
Leia maisDisciplina: Unidade V: Prof.: E-mail: Período:
Encontro 17 Disciplina: Sistemas de Banco de Dados Unidade V: Introdução à Linguagem SQL Prof.: Mario Filho E-mail: pro@mariofilho.com.br Período: 5º. SIG - ADM 13. Introdução à Linguagem SQL Introdução
Leia maisProgramaçã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