RESUMO. Palavras-chave: Persistência. Framework ORM. JPA. Benckmark. ABSTRACT

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

Download "RESUMO. Palavras-chave: Persistência. Framework ORM. JPA. Benckmark. ABSTRACT"

Transcrição

1 BENCHMARK DE FRAMEWORK MAPEAMENTO OBJETO-RELACIONAL (ORM) UMA ANÁLISE UTILIZANDO JAVA PERSISTENCE API (JPA) FRAMEWORK S BENCHMARK OBJECT-RELATIONAL MAPPING (ORM) - AN ANALYSIS USING JAVA PERSISTENCE API (JPA) Bárbara Ayako Nass Leonardo Henrique Marcon de Biagi Prof. Me Anderson Pazin RESUMO O armazenamento e gerenciamento de dados são atividades fundamentais para os sistemas de informação. Esses sistemas são apoiados, em sua grande maioria, por gerenciadores de banco de dados relacionais. Cada vez mais, tais sistemas são desenvolvidos utilizando-se dos conceitos e as linguagens orientadas a objetos. Nesse contexto há uma grande diferença semântica de funcionamento entre os conceitos de orientação a objetos, destinado ao desenvolvimento dos sistemas, e os conceitos de bases de dados relacionais, onde as aplicações desenvolvidas persistem os seus dados. Uma possível solução seria utilizar frameworks de persistência ORM que fazem o mapeamento entre os objetos e as relações. Este trabalho apresenta um estudo comparativo entre alguns dos principais frameworks ORM desenvolvidos para a linguagem Java tendo como objetivo principal avaliar o desempenho a fim de se obter dados que possam ser utilizados por outros desenvolvedores. Para facilitar tais testes, faz-se o uso da API JPA que permite a fácil migração entre esses frameworks com pequenas alterações em sua configuração. Palavras-chave: Persistência. Framework ORM. JPA. Benckmark. ABSTRACT Storage and data management activities are critical to information systems. These systems are supported mostly by managers relational database. Increasingly, such systems are being developed utilizing the concepts and object-oriented languages. In this context there is a great difference between the functioning of semantic concepts of object orientation, for the development of systems, and the concepts of relational databases, where applications developed persist your data. One possible solution would be to use ORM persistence frameworks that make the mapping between objects and relations (tables). This paper presents a comparative study between some of the major ORM frameworks developed for the Java language with the main objective to evaluate the performance in order to obtain data that can be used by other developers. To facilitate these tests, it is using the JPA API that allows easy migration between these frameworks with small changes to your configuration. Keywords: Persistence. ORM Framework. JPA. Benckmark - Revista Científica do Unisalesiano Lins SP, ano 4., n.8, jan/jun de

2 INTRODUÇÃO A persistência de dados, normalmente refere-se à ação de guardar dados em um banco de dados relacional. Essa abordagem de banco de dados relacionais é bem conhecida e possui gerenciamento flexível de dados. Segundo Bauer e King (2007, p. 6): "Devido ao completo e consistente fundamento teórico do modelo de dados relacional, banco de dados relacionais podem efetivamente garantir e proteger a integridade dos dados, dentre outras características desejáveis". Sistemas de gerenciamento de banco de dados relacionais não são específicos para uma linguagem de programação e nem a uma aplicação em particular. Esse princípio é conhecido como independência de dados, afinal os dados vivem por mais tempo que as aplicações. Segundo Bauer e King (2007) a tecnologia relacional fornece um modo de compartilhar os dados por entre essas diferentes aplicações, sendo então um denominador comum de vários sistemas e tecnologias das plataformas diferentes. O uso de linguagens orientadas a objetos tem se solidificado nos últimos anos. Segundo o site TIOBE Software (2011) esse tipo de linguagem é o que tem maior crescimento de uso nos últimos cinco anos. Existe uma diferença conceitual muito grande entre a programação orientada a objetos e a persistência de dados em bancos relacionais, o que geralmente causa grandes dificuldades durante o processo de desenvolvimento de software que fazem uso das duas abordagens. O Mapeamento de Objeto-Relacional (ORM) é uma abordagem que permite a construção de sistemas utilizando o paradigma orientado a objetos com a persistência, destes objetos, em bancos de dados relacionais. Com a utilização de técnicas e estratégias específicas, é possível mapear classes com seus atributos e associações para o modelo relacional (SILVA et al. apud Carvalho, 2006). Atualmente no mercado existem diversos frameworks ORM, bem como, aplicações de banco de dados, fazendo com que desenvolvedores tenham uma gama enorme de opções. Porem é necessário que essas aplicações promovam confiabilidade e robustez e principalmente consigam mapear os dados de forma correta e integra. O objetivo deste trabalho é analisar o desempenho dos principais frameworks ORM disponíveis para a linguagem Java: Hibernate, EclipseLink e Oracle TopLink, verificando-se a performance em diferentes situações. Para facilitar a migração entre - Revista Científica do Unisalesiano Lins SP, ano 4., n.8, jan/jun de

3 os frameworks será utilizado Java Persistence API (JPA) para interfacear os ORMs. Essa pesquisa pode ajudar a desenvolvedores optarem por determinados frameworks dependendo do contexto de suas aplicações. 1 FUNDAMENTOS CONCEITUAIS 1.1 Frameworks Framework é um projeto, que pode ser reutilizável em um sistema ou somente parte dele, representado por classes relacionadas. Segundo Pazin (2004, p. 16): Framework é uma infra-estrutura genérica, baseada em um domínio, que pode ser adaptada para solucionar problemas específicos desse domínio, servindo como um modelo para a construção de aplicações através da especificação das classes e das colaborações entre elas. O principal proposito de um framework é ajudar no processo de desenvolvimento de aplicações, permitindo que elas sejam desenvolvidas mais rapidamente e facilmente, resultando em uma aplicação de qualidade superior. Framework funciona como um molde para construção de aplicações e subsistemas, permite o reuso de código e de projeto, liberando o desenvolvedor de aspectos comuns da aplicação. Todas as aplicações construídas a partir de um mesmo framework apresentam características similares, diferenciando-se em seu comportamento, que varia conforme a necessidade da aplicação. Isso torna as aplicações desenvolvidas, a partir de frameworks mais fáceis de se manter e mais consistentes para os usuários que não precisam aprender diferentes aplicações. (PAZIN, 2004, p.16). 1.2 Persistência de dados em aplicações orientadas a objetos Objeto é a instancia de uma classe, e a persistência de seus dados permite a ele sobreviver ao processo que o criou, em outra palavras, o estado do objeto pode ser armazenado, e um objeto com um mesmo estado pode ser recriado em algum ponto no futuro. Este processo não está limitado a um objeto sozinho, redes inteiras de objetos interconectados podem ser persistentes. De acordo com Bauer e King (2007), a grande maioria dos objetos não é persistente, havendo também o objeto transiente que tem um tempo de vida - Revista Científica do Unisalesiano Lins SP, ano 4., n.8, jan/jun de

4 limitado, sendo delimitado pela vida do processo que o instanciou. Quase todas as aplicações Java possuem objetos persistentes e transientes e devido a isso se faz necessário um subsistema que gerencie esses dados persistentes. A persistência de dados sempre foi um problema entre os desenvolvedores Java, muitos automatizavam funções existentes no sistema e as armazenavam no banco de dados, ou seja, com as mudanças no sistema ou troca do banco de dados acabava-se tornando um transtorno, afinal em muitos casos o banco de dados tem um dialeto próprio. A intenção dos frameworks ORM é tentar construir aplicações que permitam portabilidade total. Segundo Carvalho (2008) o ORM se comporta como uma camada que possui uma gama de métodos que cuidam de tarefa, tais como: create (cria um novo objeto da classe a partir dos dados da tabela), find (busca um determinado registro no banco e o torna um objeto da classe), delete (exclui registros do banco) e update (atualiza registros de uma tabela de acordo com as solicitações). Esses métodos variam de acordo com a linguagem que será utilizada pelo desenvolvedor. Os bancos de dados relacionais modernos fornecem uma representação estruturada dos dados persistentes. Segundo Bauer e King (2007) ele permite a manipulação, classificação, busca e a agregação dos dados e os sistemas de gerenciamento de banco de dados são responsáveis por gerenciar a concorrência e a integridade dos dados e também compartilhar os dados entre os múltiplos usuários e múltiplas aplicações. Para utilizar qualquer uma das aplicações de banco de dados disponíveis no mercado é necessário um entendimento sólido do modelo relacional e de SQL, que é a linguagem para sua manipulação. O banco de dados é somente uma das partes do ORM a outra parte consiste nos objetos da sua aplicação Java que necessitam ser persistidos e carregados no banco de dados utilizando o SQL. Quando se trabalha com um banco de dados SQL em uma aplicação Java, o código Java trata das declarações para o banco de dados via API de Conectividade chamada, Java Database Connectivity (JDBC). Seja o SQL embutido no código Java, escrito a mão, ou mesmo gerado dinamicamente pelo Java, acaba-se utilizando a API JDBC para vincular os argumentos, no intuito de preparar os parâmetros para consulta, executar as consultas, recuperar valores, assim por diante. Essas são tarefas de acesso aos - Revista Científica do Unisalesiano Lins SP, ano 4., n.8, jan/jun de

5 dados de baixo nível. O que se busca é escrever um código que salve e recupere os objetos - instancias das classes- no banco de dados sem esse penoso trabalho de baixo nível. 1.3 Frameworks de Mapeamento Objeto-Relacional (ORM) Hibernate O Hibernate é um framework que se relaciona com o banco de dados relacional garantindo ao desenvolvedor a transparência no mapeamento objeto/relacional. Para isso, o deve-se seguir algumas regras para desenvolvimento, e o restante da comunicação com o banco de dados fica com sobre a responsabilidade do framework O Hibernate é uma ferramenta que faz o mapeamento objeto/relacional no ambiente Java. O termo de mapeamento de objeto/relacional se refere à técnica de mapear uma representação de dados de um modelo de objeto para dados de modelo relacional com o esquema baseado em SQL. (HIBERNATE, s.d) O Hibernate automatiza muitas tarefas de códigos repetitivas, mas não cuida somente do mapeamento de classes Java para tabelas de banco de dados (e de tipos de dados em Java para tipos de dados em SQL), fornece também facilidade de consultas e recuperação de dados, podendo reduzir significantemente o tempo de desenvolvimento gasto com a manipulação manual de dados no SQL e JDBC. Graças ao Hibernate, o esquema de banco de dados pode ser facilmente melhorado e manipulado, permitindo criar uma implementação apropriada do modelo de domínio mais tarde. (HIBERNATE, s.d) EclipseLink O Eclipse Persistence Services Project, mais conhecido como EclipseLink, é uma solução abrangente de persistência open source. Seu projeto foi iniciado por uma doação do código-fonte completo e suítes de teste de produtos da Oracle TopLink. Este projeto traz a experiência de mais de 12 anos de uso comercial e de desenvolvimento.(clarke, 2008). Similar ao Hibernate, a intenção do projeto é oferecer uma solução baseada em padrões centrados no JPA, mas com a capacidade de usar recursos avançados - Revista Científica do Unisalesiano Lins SP, ano 4., n.8, jan/jun de

6 para aquelas aplicações onde são necessários. Segundo Clarke (2008), o serviço de persistência mais popular do EclipseLink é lidar com bancos de dados relacionais através de JPA. Segundo Clarke (2008): Este apoio de mapeamento tem evoluído ao longo de muitos anos de uso comercial lidando com muitos modelos de domínio e esquemas relacionais. O apoio resultante é suportado através de JPA sempre que possível e configurável com mapeamentos. O EclipseLink apresenta uma solução poderosa e original de cache, enquanto outras soluções de persistência armazenam em cache as linhas de dados e reconstroem objetos quando ocorre um cache hit, EclipseLink mantém em cache as entidades com todas as conversões de dados definidos. (Clarke, 2008) Oracle TopLink O TopLink permite mapear um modelo de objeto Java e Java Beans para um banco de dados relacional e as fontes de dados não-relacionais. Ele faz a ponte entre objetos e as relações que existem entre eles e os bancos de dados relacionais. Com TopLink o usuário pode reduzir o tempo e o custo de desenvolvimento pois ele proporciona a utilização de um comprovado padrão da indústria de frameworks de persistência. (MANUAL, 2002). TopLink permite desenvolver aplicações de alto desempenho e escalábilidade usando um rico conjunto de comprovado desempenho. (MANUAL, 2002). De acordo com o Manual (2002) o TopLink fornece recursos como: a) Manter a independência de plataforma através da utilização de um produto Java 100 por cento puro que podem ser executados em qualquer ambiente Java ou servidor de aplicativos Java. b) Manter a independência de dados através da utilização do TopLink no nível do objeto e API nível de objeto de consulta. c) Acessar qualquer banco de dados através de um driver JDBC compatível e acesso não-relacional a fontes de dados através de TopLink SDK para Sistemas de Informação Empresariais. d) Integra-se com tecnologia de ponta - Revista Científica do Unisalesiano Lins SP, ano 4., n.8, jan/jun de

7 1.3.4 Java Persitence API (JPA) O JPA lida com a forma como os dados relacionais são mapeados para objetos Java, a maneira que esses objetos são armazenados em um banco de dados relacional para que eles possam ser acessados em um momento posterior, e a existência continuada de um estado da entidade mesmo após a aplicação que usa ela termina. Além de simplificar o modelo de persistência da entidade, o JPA padroniza mapeamento objeto-relacional. (BISWAS; ORT, 2006). Para Biswas e Ort (2006), Java Persistence API baseia-se em ideias de frameworks de persistência de liderança e APIs como Hibernate, TopLink da Oracle e Java Data Objects. O JPA simplifica o modelo de programação para a persistência de entidade. Abaixo uma lista rápida de recursos segundo Biswas e Ort (2006). a) Requer menos classes e interfaces b) Praticamente elimina os descritores de implementação prolongados através de anotações c) Endereços mais especificações típicas através de padrões de anotação. d) Fornece mais limpo, mais fácil, mapeamento objeto-relacional padronizados. e) Elimina a necessidade de código de pesquisa. f) Adiciona suporte para herança, polimorfismo, e consultas polimórficas. g) Adiciona suporte para named (estático) e consultas dinâmicas. h) Java fornece uma linguagem de consulta Persistência. i) Torna mais fácil para testar entidades fora do container EJB. j) Pode ser usada fora do recipiente k) Pode ser usado com pluggable, terceiros prestadores de persistência 2 PROTÓTIPO DE APLICAÇÃO PARA OS CASOS DE TESTES O objetivo deste trabalho é analisar o desempenho dos principais frameworks ORM disponíveis para a linguagem Java, para isso foram realizados testes utilizando-se um protótipo de sistema simples para a gestão de vendas on-line, onde é possível realizar a venda de determinados produtos a clientes. A Figura 1 ilustra o - Revista Científica do Unisalesiano Lins SP, ano 4., n.8, jan/jun de

8 diagrama de classes desse protótipo. Figura 1. Diagrama de classes Prototipo vendas on-line Fonte: Elaborado pelos autores, Como estratégia para os testes desenvolvidos foi utilizado o banco de dados Oracle como padrão. Os testes foram baseados na utilização dos frameworks: TopLink, EclipseLink e Hibernate, onde todos fazem as mesmas operações no banco de dados. A análise se fundamentou no tempo de execução dessas operações em cada um dos frameworks apresentados. Os testes foram desenvolvidos utilizando-se o ambiente de desenvolvimento intregrado (IDE) NetBeans A operação escolhida para a análise foi a de inserção e os testes foram aplicados nas seguintes classes: - Revista Científica do Unisalesiano Lins SP, ano 4., n.8, jan/jun de

9 a) Unidade Medida: onde não ocorre nenhuma relação de dependência e nem associação entre objetos (tabela sem recebimento de chaves estrangeiras). b) Pessoa Física: que herda da classe Cliente. c) Produto: que possui relacionamento de associação com a classe Unidade Medida (isso gera uma tabela que recebe uma chave estrangeira). d) Venda: possui relação com duas classes, uma associação com a classe Clientes e uma associação com a classe Itens Vendidos, que por sua vez tem agregação com Produtos. e) Todas as classes do sistema. As inserções foram feitas com: 1 objeto, objetos, objetos e objetos, produzindo respectivamente 1 linha, linhas, linhas e linhas nas tabelas do banco de dados. Os testes foram realizados em um computador com as seguintes configurações: a) Processador: Intel Atom N MHz. b) Modelo: Hewlett-Packard HP Mini c) Memória RAM: 2036 MB. d) Interface da unidade de armazenamento: Serial ATA II. e) Sistema Operacional: MS Windows 7 Ultimate Service Pack 1. 3 RESULTADOS DOS TESTES 3.1 Teste 1: Persistência de objetos da classe Unidade de Medida A Figura 2 ilustra o gráfico com os resultados do Teste 1. Percebe-se que não houve variações significativas de tempos de execução nos três tipos de frameworks utilizados, visto que ocorreu apenas uma diferença de 1 segundo nos testes de inserção de linhas. Sendo assim, com inserções de objetos o EclipseLink foi 1 segundo mais rápido que os demais; com inserções de objetos o Hibernate foi um segundo mais rápido que os demais; com inserções de objetos o Oracle TopLink foi 1 segundo mais rápido que os demais. - Revista Científica do Unisalesiano Lins SP, ano 4., n.8, jan/jun de

10 Figura 2: Teste tabela Unidade Medida Fonte: Elaborado pelos autores, Teste 2: Persistência de objetos utilizando Herança Figura 3: Teste tabela Pessoa Física Fonte: Elaborado pelos autores, A Figura 3 ilustra o gráfico como os resultados do Teste 2. Observando-se esse gráfico é possível perceber que nos testes realizados com inserções de objetos houve-se um desenpenho um pouco maior com o TopLink em relação aos demais, sendo ele 8 segundos mais rápido que o Hibernate por exemplo, porém ao aumentar as inserções para objetos o Hibernate mostrou-se mais rápido 10 segundos em relação ao TopLink e 33 segundos que o EclipseLink. - Revista Científica do Unisalesiano Lins SP, ano 4., n.8, jan/jun de

11 3.3 Teste 3: Persistência de objetos que possui relacionamento com uma classe Os resultados, ilustrados no gráfico da Figura 4, apresentam um melhor desempenho no framework EclipseLink com inserções de objetos, sendo 3 segundos mais rapido que o TopLink e 5 segundos mais rapido que o Hibernate, porém, o desempenho do Framework Hibernate e TopLink foram melhor em 20 segundos sobre o EclipseLink nos testes de inserções com objetos. Figura 4: Teste tabela Produto Fonte: Elaborado pelos autores, Teste 4: Persistência de objetos com dois relacionamentos No teste com a classe Venda verifica-se um desempenho consideravelmente bom do framework TopLink em relação aos demais frameworks. Seu desempenho foi melhor em 1.000, e inserções de objetos. Nos testes com inserções de objetos o TopLink teve um desempenho melhor sobre o Hibernate de 4 segundos e sobre o EclipseLink de 10 segundos. Tal situação pode ser verificada na Figura 5 que ilustra tal teste. - Revista Científica do Unisalesiano Lins SP, ano 4., n.8, jan/jun de

12 Figura 5: Teste tabela Venda Fonte: Elaborado pelos autores, Teste 5: Inserção em todas as classes do sistema Figura 6: Inserção em todas as tabelas Fonte: Elaborado pelos autores, Na figura 6, verifica-se um desempenho melhor do Framework TopLink em inserções de objetos, sendo mais rápido que o segundo (Hibernate) em 4 segundos, nas inserções de objetos o toplink manteve seu desempenho melhor em, 8 segundos sobre o EclipseLink e 9 segundos sobre o Hibernate. Nas inserções de objetos o toplink também foi melhor que os demais, sendo 17 - Revista Científica do Unisalesiano Lins SP, ano 4., n.8, jan/jun de

13 segundos mais rápido que o Hibnernate e 21 segundos mais rápido que o EclipseLink. CONCLUSÃO Vem se tornando cada dia mais importante a criação de sistemas computacionais que respondam cada vez mais rápido às grandes demandas de acesso a dados. Devido a isso é necessário, garantir que o acesso aos dados seja feito de modo eficiente, especialmente em aplicações corporativas. Nesse contexto, este trabalho apresentou um estudo comparativo entre três frameworks de persistência Java: EclipseLink, TopLink e Hibernate. Tais frameworks diminuem o tempo necessário de desenvolvimento de aplicações orientadas a objetos que necessitam persistir seus dados em banco de dados relacionais, porém, isso não significa que o acesso aos dados será sempre mais rápido. Quando poucos dados são adicionados, a diferença entre o desempenho dessas implementações não é significativo. Entretanto essa afirmativa não é verdade quando se tratam de grandes volumes de dados. Em outras palavras, inserir, por exemplo, uma ou dez linhas em um banco de dados não mostrará diferenças significativas de desempenho, porém inserir ou linhas apresentam diferenças significativas no desempenho. Considerando que todas as implementações foram usadas com o mínimo de recursos possíveis para o funcionamento destas, o TopLink foi, sem dúvidas, a implementação mais estável de todas, estando entre as mais rápidas na inserção de tabelas simples e sendo a mais rápida nas tabelas mais complexas, como demonstrado nos testes. Em testes feitos anteriormente por Barbon (2011), onde foram testados os Frameworks Hibernate e TopLink, com inserções e seleções no banco de dados MySQL foi verificado um melhor desempenho do Framework Hibernate, com grandes diferenças, onde em sua maioria os resultados foram quase metade do tempo de resposta. Essa divergência de resultados pode ser fundamentada no fato do uso do uso de um banco de dados diferente, nos testes feitos por Barbon (2011) foi utilizado o MySQL como já foi dito, e na proposta deste trabalho foi utilizado o Oracle e isso - Revista Científica do Unisalesiano Lins SP, ano 4., n.8, jan/jun de

14 pode ter auxiliado para que o Framework da Oracle TopLink tenha tido um melhor desempenho. Esse estudo fundamenta-se apenas e operações de inserções, o que limita bastante essa conclusão deste trabalho. Como proposta para trabalhos futuros, sugere-se a criação de um conjunto de teste que simule todas as operações básicas de um banco de dados: INSERT, UPDATE, DELETE e SELECT. Nesses testes pode-se ainda tentar o uso de outras bases de dados como MySQL, PostGres, SQL Server, DB2 entre outras. Aumentar a quantidade de vezes de realização dos testes, para que se possa observar se há mudanças significativas no tempo de realização das ações pode ser uma outra sugestão para aumentar a credibilidade dos resultados apresentados. REFERÊNCIAS BARBON, S. Comparação de desempenho entre Hibernate e TopLink para persistência baseada em JPA com MySQL. Patternizando, 11 jan Disponível em: <http://www.patternizando.com.br/2011/01/comparacao-dedesempenho-entre-hybernate-e-toplink-para-persistencia-baseada-em-jpa-commysql/> Acesso em: 17 mai BAUER, C; KING, G. Java Persistence com Hibernate. Rio de Janeiro: Ciência Moderna, BISWAS, R.; ORT, E. A Java Persistence API - um modelo mais simples de programação para a persistência da entidade. Oracle, mai Disponível em: <http://www.oracle.com/technetwork/articles/javaee/jpa html> Acesso em: 15 nov CARVALHO, L. Object-Relational Mapping(ORM) Mapeamento de Objeto- Relacional. RedRails, 13 abr Disponível em:<www.redrails.com.br/ 2011 /04/object-relational-mappingorm-mapeamento-de-objeto-relacional/> Acesso em: 15 set CLARKE, D. Apresentando EclipseLink. Eclipse Zone, 30 jun Disponível em: <http://eclipse.dzone.com/articles/introducing-eclipselink?page=0,0> Acesso em: 14 nov HIBERNATE. Community Documentation. Hibeernate, [s.d.] Disponível em: <http://docs.jboss.org/hibernate/core/3.6/reference/en-us/html/architecture. html> Acesso em: 14 nov MANUAL. Oracle9iAs TopLink. Oracle, ago Disponível em: <http://download.oracle.com/docs/cd/a /toplink.903/b10061.pdf> Acesso em: - Revista Científica do Unisalesiano Lins SP, ano 4., n.8, jan/jun de

15 14 nov PAZIN, A. GawCRe: Um gerador de aplicações baseadas na web para o domínio de clinicas de reabilitação Dissertação (Mestrado em Ciências da Computação) Universidade Federal de São Carlos, Centro de Ciências Exatas e de Tecnologia, São Carlos. TIOBE Programming Community index de novembro de Tiobe software, [s.d.]. Disponível em: <www.tiobe.com/index.php/content/paperinfo/tpci/index.html> Acesso em: 23 set Revista Científica do Unisalesiano Lins SP, ano 4., n.8, jan/jun de

UNIVERSIDADE ESTADUAL DO CENTRO-OESTE UNICENTRO CURSO DE ESPECIALIZAÇÃO EM MÍDIAS EM EDUCAÇÃO

UNIVERSIDADE ESTADUAL DO CENTRO-OESTE UNICENTRO CURSO DE ESPECIALIZAÇÃO EM MÍDIAS EM EDUCAÇÃO UNIVERSIDADE ESTADUAL DO CENTRO-OESTE UNICENTRO CURSO DE ESPECIALIZAÇÃO EM MÍDIAS EM EDUCAÇÃO Jader dos Santos Teles Cordeiro Orientador Prof. Paulo Guilhermeti PERSISTÊNCIA EM OBJETOS JAVA: UMA ANÁLISE

Leia mais

UFG - Instituto de Informática

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

Leia mais

Persistência de Dados em Java com JPA e Toplink

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

Leia mais

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

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

Leia mais

MAPEAMENTO OBJETO-RELACIONAL EM JAVA E PHP

MAPEAMENTO OBJETO-RELACIONAL EM JAVA E PHP 4 MAPEAMENTO OBJETO-RELACIONAL EM JAVA E PHP Josiel Silva Moura 1 Carlos David Rocha de Souza 1 RESUMO Atualmente, é comum o uso de bancos de dados relacionais no meio corporativo e da programação orientada

Leia mais

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

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

Leia mais

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

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

Leia mais

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

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

Análise de Desempenho dos Frameworks de Persistência Hibernate e EclipseLink

Análise de Desempenho dos Frameworks de Persistência Hibernate e EclipseLink Análise de Desempenho dos Frameworks de Persistência e EclipseLink Aurélio Vargas Ramos Júnior 1, Edson A. Oliveira Junior 2 Resumo. Nas aplicações de software é comum o armazenamento de dados persistentes.

Leia mais

Análise de Desempenho dos Frameworks de Persistência Hibernate e Spring Data

Análise de Desempenho dos Frameworks de Persistência Hibernate e Spring Data Análise de Desempenho dos Frameworks de Persistência e Spring Data Vitor Gotardo, Edson A. Oliveira Junior 2 Resumo. Grande parte das aplicações desenvolvidas utilizando linguagens orientadas a objetos

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

Dados em Java. Introdução

Dados em Java. Introdução Interface Gráfica e Banco de Dados em Java Introdução Java and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. Licença para uso e

Leia mais

COMPARAÇÃO ENTRE OS FRAMEWORKS DE DESENVOLVIMENTO DE SOFTWARE ENTITY FRAMEWORK E NHIBERNATE : ESTUDO DE CASO EM UM SISTEMA

COMPARAÇÃO ENTRE OS FRAMEWORKS DE DESENVOLVIMENTO DE SOFTWARE ENTITY FRAMEWORK E NHIBERNATE : ESTUDO DE CASO EM UM SISTEMA 73 COMPARAÇÃO ENTRE OS FRAMEWORKS DE DESENVOLVIMENTO DE SOFTWARE ENTITY FRAMEWORK E NHIBERNATE : ESTUDO DE CASO EM UM SISTEMA Daniel José Angotti Analista de Negócio, Repom S/A djangotti@gmail.com Carlos

Leia mais

SISTEMA DE GESTÃO DE PRODUÇÃO DE EVENTOS

SISTEMA DE GESTÃO DE PRODUÇÃO DE EVENTOS SISTEMA DE GESTÃO DE PRODUÇÃO DE EVENTOS Rodrigo das Neves Wagner Luiz Gustavo Galves Mählmann Resumo: O presente artigo trata de um projeto de desenvolvimento de uma aplicação para uma produtora de eventos,

Leia mais

Documento de Projeto de Sistema

Documento de Projeto de Sistema Documento de Projeto de Sistema 1 IFES / Serra Projeto: Gerenciador de Pelada - Oasis Registro de Alterações: Versão Responsável Data Alterações 0.1 Eduardo Rigamonte, Geann Valfré, João Paulo Miranda,

Leia mais

Aula 5. Carlos Eduardo de Carvalho Dantas (carloseduardocarvalhodantas@gmail.com)

Aula 5. Carlos Eduardo de Carvalho Dantas (carloseduardocarvalhodantas@gmail.com) Persistência com JDBC e JPA Aula 5 Carlos Eduardo de Carvalho Dantas (carloseduardocarvalhodantas@gmail.com) Quem é sábio procura aprender, mas os tolos estão satisfeitos com a sua própria ignorância..

Leia mais

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

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

Leia mais

SISTEMA GERENCIAL TRATORPLAN

SISTEMA GERENCIAL TRATORPLAN SISTEMA GERENCIAL TRATORPLAN SIGET Fabrício Pereira Santana¹, Jaime William Dias¹, ², Ricardo de Melo Germano¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil fabricioblack@gmail.com germano@unipar.br

Leia mais

Java e Banco de Dados: JDBC, Hibernate e JPA

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

Leia mais

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

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

Leia mais

SISTEMA PARA COMPOSIÇÃO E CORREÇÃO DE LISTAS DE QUESTÕES DE MÚLTIPLA ESCOLHA

SISTEMA PARA COMPOSIÇÃO E CORREÇÃO DE LISTAS DE QUESTÕES DE MÚLTIPLA ESCOLHA UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ROBERTO ROSIN SISTEMA PARA COMPOSIÇÃO E CORREÇÃO DE LISTAS DE QUESTÕES DE MÚLTIPLA ESCOLHA

Leia mais

SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS

SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS Pablo dos Santos Alves Alexander Roberto Valdameri - Orientador Roteiro da apresentação Introdução Objetivos Motivação Revisão bibliográfica

Leia mais

ALTO DESEMPENHO UTILIZANDO FRAMEWORK HIBERNATE E PADRÃO JAVA PERSISTENCE API

ALTO DESEMPENHO UTILIZANDO FRAMEWORK HIBERNATE E PADRÃO JAVA PERSISTENCE API ALTO DESEMPENHO UTILIZANDO FRAMEWORK HIBERNATE E PADRÃO JAVA PERSISTENCE API Tiago Henrique Gomes da Silva Balduino 1, Ricardo Ribeiro Rufino 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil tiagobalduino77@gmail.com

Leia mais

Arquitetura de Banco de Dados

Arquitetura de Banco de Dados Arquitetura de Banco de Dados Daniela Barreiro Claro MAT A60 DCC/IM/UFBA Arquitetura de Banco de dados Final de 1972, ANSI/X3/SPARC estabeleceram o relatório final do STUDY GROUP Objetivos do Study Group

Leia mais

CURSO DESENVOLVEDOR JAVA Edição 2010

CURSO DESENVOLVEDOR JAVA Edição 2010 CURSO DESENVOLVEDOR JAVA Edição 2010 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos e com o uso

Leia mais

CURSO DESENVOLVEDOR JAVA Edição 2009

CURSO DESENVOLVEDOR JAVA Edição 2009 CURSO DESENVOLVEDOR JAVA Edição 2009 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos e com o uso

Leia mais

RESUMO. Palavras-chave: AlphaWEB. Gerador de Artefatos. Aplicações. Software. ABSTRACT

RESUMO. Palavras-chave: AlphaWEB. Gerador de Artefatos. Aplicações. Software. ABSTRACT GERADOR DE ARTEFATOS PARA APLICAÇÕES WEB GENERATOR ARTIFACTS FOR WEB APPLICATIONS Juliane Rosário juh_rosario@yahoo.com.br Murillo da Silva Casa Grande murilloscg@yahoo.com.br Prof. M. Sc. Anderson Pazin

Leia mais

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos

Leia mais

Persistência. 2004 Fernando Lozano, http://www.lozano.eti.br Persistência Objeto-Relacional com Java Pag. 1

Persistência. 2004 Fernando Lozano, http://www.lozano.eti.br Persistência Objeto-Relacional com Java Pag. 1 Persistência Objeto-Relacional com Java Fernando Lozano http://www.lozano.eti.br Consultor Independente Prof. Faculdades UniABEU Prof. SENAC Editor Adjunto da Revista Java Magazine 2004 Fernando Lozano,

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

Banco de Dados. Maurício Edgar Stivanello

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

Leia mais

Desenvolvendo Aplicações Web com NetBeans

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

Leia mais

ruirossi@ruirossi.pro.br

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

Leia mais

Unidade 8: Padrão MVC e DAO Prof. Daniel Caetano

Unidade 8: Padrão MVC e DAO Prof. Daniel Caetano Programação Servidor para Sistemas Web 1 Unidade 8: Padrão MVC e DAO Prof. Daniel Caetano Objetivo: Apresentar a teoria por trás dos padrões na construção de aplicações Web. INTRODUÇÃO Nas aulas anteriores

Leia mais

Persistência em Software Orientado a Objetos:

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

Leia mais

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Ferramenta de apoio a gerência de configuração de software Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Gerência de Configuração

Leia mais

WebApps em Java com uso de Frameworks

WebApps em Java com uso de Frameworks WebApps em Java com uso de Frameworks Fred Lopes Índice O que são frameworks? Arquitetura em camadas Arquitetura de sistemas WEB (WebApps) Listagem resumida de frameworks Java Hibernate O que são frameworks?

Leia mais

INDICE 3.APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES

INDICE 3.APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES w w w. i d e a l o g i c. c o m. b r INDICE 1.APRESENTAÇÃO 2.ESPECIFICAÇÃO DOS RECURSOS DO SOFTWARE SAXES 2.1. Funcionalidades comuns a outras ferramentas similares 2.2. Funcionalidades próprias do software

Leia mais

Classes de Entidades Persistentes JDB

Classes 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 mais

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

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

Leia mais

PRD Tecnologia de Gestão Ltda. Julho/2008

PRD Tecnologia de Gestão Ltda. Julho/2008 O Processo de Desenvolvimento Telescope Julho/2008 Página 1 Sumário Introdução...3 O desenvolvimento de software tradicional...3 O problema da produtividade...3 O problema da portabilidade...6 O problema

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

Tese / Thesis Work Análise de desempenho de sistemas distribuídos de grande porte na plataforma Java

Tese / Thesis Work Análise de desempenho de sistemas distribuídos de grande porte na plataforma Java Licenciatura em Engenharia Informática Degree in Computer Science Engineering Análise de desempenho de sistemas distribuídos de grande porte na plataforma Java Performance analysis of large distributed

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

Arquitetura de Workflow em Plone e Web Services

Arquitetura de Workflow em Plone e Web Services Arquitetura de Workflow em Plone e Web Services Elisandra Fidler Pez, Heitor Strogulski Núcleo de Processamento de Dados Universidade de Caxias do Sul (UCS) Caxias do Sul, RS Brasil {efidler, hstrogul}@ucs.br

Leia mais

Aula 4. Carlos Eduardo de Carvalho Dantas (carloseduardocarvalhodantas@gmail.com)

Aula 4. Carlos Eduardo de Carvalho Dantas (carloseduardocarvalhodantas@gmail.com) Persistência com JDBC e JPA Aula 4 Carlos Eduardo de Carvalho Dantas (carloseduardocarvalhodantas@gmail.com) A sabedoria não se transmite, é preciso que nós a descubramos fazendo uma caminhada que ninguém

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

ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE

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

Leia mais

Mapeamento Lógico/Relacional com JPA

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

Leia mais

SISTEMAS DE BANCO DE DADOS. Prof. Adriano Pereira Maranhão

SISTEMAS DE BANCO DE DADOS. Prof. Adriano Pereira Maranhão SISTEMAS DE BANCO DE DADOS Prof. Adriano Pereira Maranhão 1 REVISÃO BANCO DE DADOS I O que é banco de dados? Ou seja afinal o que é um SGBD? REVISÃO BD I REVISÃO DE BD I Um Sistema de Gerenciamento de

Leia mais

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados: MC536 Introdução Sumário Conceitos preliminares Funcionalidades Características principais Usuários Vantagens do uso de BDs Tendências mais recentes em SGBDs Algumas desvantagens Modelos de dados Classificação

Leia mais

Tecnologia Java. Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br

Tecnologia Java. Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br Tecnologia Java Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br Origem da Tecnologia Java Projeto inicial: Oak (liderado por James Gosling) Lançada em 1995 (Java) Tecnologia

Leia mais

FICHA DE CATALOGAÇÃO DE REVISTAS DE NOTÍCIAS. Coleção

FICHA DE CATALOGAÇÃO DE REVISTAS DE NOTÍCIAS. Coleção Título: SQL Magazine Notas de Título Feita para Desenvolvedores de Software e DBAs. Descrição Geral: Revista focada em banco de dados, análise, projeto e modelagem. Editor(es): Diretor responsável Gladstone

Leia mais

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

PROGRAMAÇÃO SERVIDOR PADRÕES MVC E DAO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano 2012-1 PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB PADRÕES MVC E DAO Prof. Dr. Daniel Caetano 2012-1 Objetivos Compreender o conceito de Padrões de Projeto Compreender o Padrão MVC Conhecer o princípio de alguns dos

Leia mais

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE Aluno: Roberto Reinert Orientador: Everaldo A. Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Workflow Processo

Leia mais

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

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

Leia mais

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

Manual de Procedimentos para Desenvolvimento de Softwares

Manual de Procedimentos para Desenvolvimento de Softwares Manual de Procedimentos para Desenvolvimento de Softwares Secretaria Geral de Informática Sin Universidade Federal de São Carlos - UFSCar Versão 2.1 O(s) critério(s) de escolha pelas tecnologias para desenvolvimento

Leia mais

Banco de Dados. Conceitos e Arquitetura de Sistemas de Banco de Dados. Profa. Flávia Cristina Bernardini

Banco de Dados. Conceitos e Arquitetura de Sistemas de Banco de Dados. Profa. Flávia Cristina Bernardini Banco de Dados Conceitos e Arquitetura de Sistemas de Banco de Dados Profa. Flávia Cristina Bernardini Relembrando... Vantagens da Utilização de SGBD Redundância controlada Consistência dos dados armazenados

Leia mais

Aula 2 - Revisão de JPA (Java Persistence API)

Aula 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 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

Banco de Dados. Aula 1 - Prof. Bruno Moreno 16/08/2011

Banco de Dados. Aula 1 - Prof. Bruno Moreno 16/08/2011 Banco de Dados Aula 1 - Prof. Bruno Moreno 16/08/2011 Roteiro Apresentação do professor e disciplina Definição de Banco de Dados Sistema de BD vs Tradicional Principais características de BD Natureza autodescritiva

Leia mais

e-vent-br: Proposta de um Sistema Web de Gerenciamento de Eventos Acadêmicos

e-vent-br: Proposta de um Sistema Web de Gerenciamento de Eventos Acadêmicos e-vent-br: Proposta de um Sistema Web de Gerenciamento de Eventos Acadêmicos Luis Paulo da Silva Carvalho, Moara Sousa Brito, Pablo Freire Matos, Lucas Amparo Barbosa, Cremildo Lima Gomes, Ivick Roberta

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 5 Servidores de Aplicação

Leia mais

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira ENTERPRISE JAVABEANS 3 Msc. Daniele Carvalho Oliveira Apostila Servlets e JSP www.argonavis.com.br/cursos/java/j550/index.html INTRODUÇÃO Introdução Enterprise JavaBeans é um padrão de modelo de componentes

Leia mais

FRWTC-235 WORKSHOP ORACLE CERTIFIED JAVA EE 6 JPA DEVELOPER

FRWTC-235 WORKSHOP ORACLE CERTIFIED JAVA EE 6 JPA DEVELOPER FRWTC-235 WORKSHOP ORACLE CERTIFIED JAVA EE 6 JPA DEVELOPER SOBRE A FRAMEWORK A Framework (www.frwtc.com) atua diretamente com profissionais do segmento de tecnologia em busca de capacitação, atualização

Leia mais

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

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

Leia mais

Figura 1.1 Código de inserção não baseado em Hibernate. Figura 1.2 Código de inserção baseado em Hibernate

Figura 1.1 Código de inserção não baseado em Hibernate. Figura 1.2 Código de inserção baseado em Hibernate Hibernate É um framework para mapeamento objeto/relacional para aplicações em Java. Tem como objetivo mor o mapeamento de classes Java em tabelas do banco de dados e viceversa, possibilitando a realização

Leia mais

UM ESTUDO SOBRE ARQUITETURA PARA DESENVOLVIMENTO DE SOFTWARE WEB UTILIZANDO NOVAS TECNOLOGIAS

UM ESTUDO SOBRE ARQUITETURA PARA DESENVOLVIMENTO DE SOFTWARE WEB UTILIZANDO NOVAS TECNOLOGIAS UM ESTUDO SOBRE ARQUITETURA PARA DESENVOLVIMENTO DE SOFTWARE WEB UTILIZANDO NOVAS TECNOLOGIAS Edi Carlos Siniciato ¹, William Magalhães¹ ¹ Universidade Paranaense (Unipar) Paranavaí PR Brasil edysiniciato@gmail.com,

Leia mais

Algumas propriedades dos objetos:

Algumas propriedades dos objetos: Orientação a Objetos Vivemos num mundo de objetos. Esses objetos existem na natureza, nas entidades feitas pelo homem, nos negócios e nos produtos que usamos. Eles podem ser categorizados, descritos, organizados,

Leia mais

DESENVOLVIMENTO COM JAVA EE E SUAS ESPECIFICAÇÕES

DESENVOLVIMENTO COM JAVA EE E SUAS ESPECIFICAÇÕES DESENVOLVIMENTO COM JAVA EE E SUAS ESPECIFICAÇÕES Hugo Henrique Rodrigues Correa¹, Jaime Willian Dias 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil hugohrcorrea@gmail.com, jaime@unipar.br Resumo.

Leia mais

Reuso. Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior

Reuso. Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Reuso Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Reutilização de Software Na maioria das áreas de engenharia de software, sistemas são desenvolvidos

Leia mais

Plano de Trabalho Docente 2015. Ensino Técnico

Plano de Trabalho Docente 2015. Ensino Técnico Plano de Trabalho Docente 2015 Ensino Técnico ETEC MONSENHOR ANTONIO MAGLIANO Código: 088 Município: Garça Eixo Tecnológico: Informação e Comunicação Habilitação Profissional: Técnica de Nível Médio de

Leia mais

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas Linguagem de Programação JAVA Professora Michelle Nery Nomeclaturas Conteúdo Programático Nomeclaturas JDK JRE JEE JSE JME JVM Toolkits Swing AWT/SWT JDBC EJB JNI JSP Conteúdo Programático Nomenclatures

Leia mais

DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS

DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS Leandro Guilherme Gouvea 1, João Paulo Rodrigues 1, Wyllian Fressatti 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil leandrog.gouvea@gmail.com,

Leia mais

Evolução. Tópicos. Bancos de Dados - Introdução. Melissa Lemos. Evolução dos Sistemas de Informação Esquemas Modelos. Características de SGBDs

Evolução. Tópicos. Bancos de Dados - Introdução. Melissa Lemos. Evolução dos Sistemas de Informação Esquemas Modelos. Características de SGBDs 1 Bancos de Dados - Introdução Melissa Lemos melissa@inf.puc-rio.br Tópicos Evolução dos Sistemas de Informação Esquemas Modelos Conceitual Lógico Características de SGBDs 2 Evolução tempo Programas e

Leia mais

Resolvendo objeto-relacional impedance mismatch com hibernate

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

Leia mais

Test-Module: uma ferramenta para gerenciamento de testes de software integrada ao FireScrum

Test-Module: uma ferramenta para gerenciamento de testes de software integrada ao FireScrum Test-Module: uma ferramenta para gerenciamento de testes de software integrada ao FireScrum Audrey B. Vasconcelos, Iuri Santos Souza, Ivonei F. da Silva, Keldjan Alves Centro de Informática Universidade

Leia mais

Padrões Arquiteturais no Java EE 7

Padrões Arquiteturais no Java EE 7 Padrões Arquiteturais no Java EE 7 Vagner F. Le Roy Júnior Curso de Pós Graduação em Arquitetura de Software Distribuído Pontifícia Universidade Católica de Minas Gerais Belo Horizonte, MG Brasil vagnerleroy@gmail.com

Leia mais

DESENVOLVENDO APLICAÇÕES UTILIZANDO JAVASERVER FACES E MVC

DESENVOLVENDO APLICAÇÕES UTILIZANDO JAVASERVER FACES E MVC DESENVOLVENDO APLICAÇÕES UTILIZANDO JAVASERVER FACES E MVC Felipe Moreira Decol Claro 1, Késsia Rita da Costa Marchi 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil felipe4258@hotmail.com, kessia@unipar.br

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

GBD. Introdução PROF. ANDREZA S. AREÃO

GBD. Introdução PROF. ANDREZA S. AREÃO GBD Introdução PROF. ANDREZA S. AREÃO Sistema de arquivos X Sistemas de Banco de Dados Sistema de arquivos Sistema de Banco de Dados Aplicativos Dados (arquivos) Aplicativos SGBD Dados (arquivos) O acesso/gerenciamento

Leia mais

Introdução a Informática. Prof.: Roberto Franciscatto

Introdução a Informática. Prof.: Roberto Franciscatto Introdução a Informática Prof.: Roberto Franciscatto 6.1 ARQUIVOS E REGISTROS De um modo geral os dados estão organizados em arquivos. Define-se arquivo como um conjunto de informações referentes aos elementos

Leia mais

Análise de Performance de Frameworks de Desenvolvimento Mobile Multiplataforma

Análise de Performance de Frameworks de Desenvolvimento Mobile Multiplataforma 347 Análise de Performance de Frameworks de Desenvolvimento Mobile Multiplataforma Kamile A. Wahlbrinck, Bruno B. Boniati Universidade Federal de Santa Maria (UFSM) Caixa Postal 54 98.400-000 Frederico

Leia mais

ORDEM DE SERVIÇO OS 003/DINFO/2013 16/09/2013

ORDEM DE SERVIÇO OS 003/DINFO/2013 16/09/2013 A DIRETORIA DE INFORMÁTICA DINFO DA UNIVERSIDADE DO ESTADO DO RIO DE JANEIRO -UERJ, no uso de suas atribuições legais, estabelece: Art. 1º: Para fins de normatização do Desenvolvimento Tecnológico na UERJ

Leia mais

TECNOLOGIAS E FRAMEWORKS UTILIZADAS NO DESENVOLVIMENTO DE SISTEMAS GERENCIAIS

TECNOLOGIAS E FRAMEWORKS UTILIZADAS NO DESENVOLVIMENTO DE SISTEMAS GERENCIAIS TECNOLOGIAS E FRAMEWORKS UTILIZADAS NO DESENVOLVIMENTO DE SISTEMAS GERENCIAIS Janderson Fernandes Barros ¹, Igor dos Passos Granado¹, Jaime William Dias ¹, ² ¹ Universidade Paranaense (UNIPAR) Paranavaí

Leia mais

Padrões de Projeto em Modelagem Orientada a Objetos Persistida em Banco de Dados Relacional

Padrões de Projeto em Modelagem Orientada a Objetos Persistida em Banco de Dados Relacional FACULDADE FARIAS BRITO CIÊNCIA DA COMPUTAÇÃO Thiago Vicente Benega Padrões de Projeto em Modelagem Orientada a Objetos Persistida em Banco de Dados Relacional Fortaleza 2010 Thiago Vicente Benega Padrões

Leia mais

Disciplina: Tecnologias de Banco de Dados para SI s

Disciplina: Tecnologias de Banco de Dados para SI s Curso de Gestão em SI Disciplina: Tecnologias de Banco de Dados para SI s Rodrigo da Silva Gomes (Extraído do material do prof. Ronaldo Melo - UFSC) Banco de Dados (BD) BD fazem parte do nosso dia-a-dia!

Leia mais

Banco de Dados de Músicas. Andre Lima Rocha Campos Osório Pereira Carvalho

Banco de Dados de Músicas. Andre Lima Rocha Campos Osório Pereira Carvalho Banco de Dados de Músicas Andre Lima Rocha Campos Osório Pereira Carvalho Definição Aplicação Web que oferece ao usuário um serviço de busca de músicas e informações relacionadas, como compositor, interprete,

Leia mais

JAVA ENTERPRISE EDITION: PERSISTÊNCIA DE BANCO DE DADOS

JAVA ENTERPRISE EDITION: PERSISTÊNCIA DE BANCO DE DADOS COLÉGIO ESTADUAL ULYSSES GUIMARÃES CURSO TÉCNICO PROFISSIONALIZANTE EM INFORMÁTICA ERINALDO SANCHES NASCIMENTO JAVA ENTERPRISE EDITION: PERSISTÊNCIA DE BANCO DE DADOS FOZ DO IGUAÇU 2013 SUMÁRIO 1. PERSISTÊNCIA

Leia mais

Sistemas Gerenciadores de Bancos de Dados

Sistemas Gerenciadores de Bancos de Dados Sistemas Gerenciadores de Bancos de Dados Fernando Castor A partir de slides elaborados por Fernando Fonseca & Robson Fidalgo 1 Sistemas de Arquivos Sistemas de arquivos Principal característica é a replicação

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

UNIVERSIDADE FEDERAL DE SANTA CATARINA CURSO DE GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO. Contribuições do MDA para o desenvolvimento de software

UNIVERSIDADE FEDERAL DE SANTA CATARINA CURSO DE GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO. Contribuições do MDA para o desenvolvimento de software UNIVERSIDADE FEDERAL DE SANTA CATARINA CURSO DE GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO Contribuições do MDA para o desenvolvimento de software Anna Carla Mohr Verner Helder Eugenio dos Santos Puia Florianópolis,

Leia mais

ANEXO 05 ARQUITETURAS TECNOLÓGICAS PROCERGS

ANEXO 05 ARQUITETURAS TECNOLÓGICAS PROCERGS ANEXO 05 ARQUITETURAS TECNOLÓGICAS PROCERGS Este anexo apresenta uma visão geral das seguintes plataformas: 1. Plataforma Microsoft.NET - VB.NET e C#; 2. Plataforma JAVA; 3. Plataforma Android, ios e Windows

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 para Internet II

Programação para Internet II Programação para Internet II Aulas 01 e 02 Prof. Fernando Freitas Costa http://professor.fimes.edu.br/fernando nando@fimes.edu.br Prof. Fernando 1 Ementa Instalação e configuração básica do NetBeans e

Leia mais

Tutorial SD. Mobile and Smart devices Development Solution - Página 1

Tutorial SD. Mobile and Smart devices Development Solution - Página 1 Mobile and Smart devices Development Solution - Página 1 Introdução Hoje em dia, está claro para a indústria de TI a relevância que têm os smartphones, tablets e dispositivos inteligentes (os chamados

Leia mais