O que mudou no Demoiselle?
|
|
- Marisa Arruda Vasques
- 6 Há anos
- Visualizações:
Transcrição
1 Framework Demoiselle 2.0 O que mudou no Demoiselle? Robson Ximenes <robsonximenes@gmail.com> Thiago Mariano <marianothiago.demoiselle@gmail.com>
2
3 Para que serve este documento?... v 1. Introdução Arquitetura Organização Integração entre camadas Mensagens Tratamento de exceção Entidade Transação Persistência Abstrações Transação Estratégia Filtros Negócio Visão demoiselle-jsf Abstrações Mensagem Tratamento de exceções Regras de navegação Passagem de parâmetros demoiselle-swing iii
4 iv
5 Para que serve este documento? Este documento tem como objetivo identificar as principais mudanças no Framework Demoiselle 2.0, exemplificando e comparando as funcionalidades presentes na versão anterior e na versão atual. Cada sessão apresentará uma área que o framework atua, mostrando apenas as funcionalidades que tiveram mudança na forma de utilização. Sempre a explicação vem acompanhada de um bloco de código que exemplifica o que foi mencionado. v
6 vi
7 Introdução O framework demoiselle passou por um período em que se buscou a padronização das aplicações, para facilitar o intercâmbio de pessoas/projetos sem todo aquele período de adaptação. Em meados de 2010, iniciou-se um estudo sobre as técnicas/tecnologias utilizadas e suas possíveis substitutas. Foi iniciado um processo de especificação da nova versão com o objetivo de tornar o demoiselle mais simples, flexível e de acordo com as especificações JEE. Este documento foi elaborado seguindo a sequência de assuntos abordados nos tutoriais da versão anterior que podem ser encontrados em: 1
8 2
9 Arquitetura 2.1. Organização Esta é a parte que sofre as maiores modificações. Agora o Demoiselle está implementado sobre o JEE 6 visando possibilitar o uso em vários tipos de aplicações (swing, jsf, javafx...) para isto o framework foi dividido em core e extensions. O core é a parte principal e mínima para se construir uma aplicação. As extensions complementam as funcionalidades do framework, por exemplo a camada de persistencia e a camada de apresentação. Os pacotes mudaram para normalizar com a url do projeto br.gov.frameworkdemoiselle e as interfaces de marcação, sem definições, foram substituidas por public interface IDisciplinaBC { public void inserir(disciplina disciplina);... Esta abordagem permite que o projetista crie quando necessário suas interfaces, precisando apenas anotar a implementação com o estereótipo que lhe convier. Algumas já vem no framework(businesscontroller, PersistenceController, ViewController e FacadeController) substituindo as interfaces antigas, porém é possivel criar controladores customizados apenas construindo uma anotação que seja segue @Retention(RUNTIME) MeuController { 2.2. Integração entre camadas Agora a integração ficou mais flexível, utilizando a especificação oficial do JEE (CDI), removendo do projeto a utilização de orientação a aspectos. Isso elimina a nessecidade também da utilização de plugins para a IDE(que muitas vezes ocasionavam problemas). Antes: 3
10 Capítulo 2. Arquitetura public class DisciplinaBC implements IDisciplinaBC // Implementa##o do demoiselle private IDisciplinaDAO disciplinadao;... Agora: public class DisciplinaBC implements IDisciplinaBC // Padr#o JEE private IDisciplinaDAO disciplinadao;... Nota Observem que a mudança foi sutil: (classe do demoiselle) (classe do JEE) Mensagens O contexto de mensagens agora pode ser injetado em qualquer classe bastando inserir a MessageContext messagectx; Antes para utilizar o contexto de mensagem não se usava injeção. Funcionava da seguinte forma: ContextLocator.getinstance().getMessageContext(); A interface IMessage agora sem o prefixo I ficou mais simples: 4
11 Tratamento de exceção public interface Message { String gettext(); SeverityType getseverity(); E também foi disponibilizada uma implementação DefaultMessage que facilita o processo de internacionalização e interpolação. Nota Para entender os detalhes de transação acesse a documentação de referência: demoiselle.sourceforge.net/docs/reference/2.0.1/html/mensagem.html 2.4. Tratamento de exceção As exceções de aplicação não precisam estender ou implementar uma classe/interface do framework, e isto dá ao projetista a liberdade de criar a sua hierarquia de exceções tranquilamente. A única coisa que precisa ser feita é anotar a exceção para que o framework possa utilizar esta exceção para controlar, por exemplo, a public class MinhaException extends RuntimeException { public String getmessage() { return "Minha mensagem!"; Uma grande e boa novidade é a possibilidade de tratar as exceções lançadas por diversos métodos em um só lugar com o exceptions handler, para isto basta criar um método na classe que receba como parâmetro a exceção que você deseja tratar e anotar esse public void trataminhaexcecao(minhaexception cause) { &. // Aqui voc# faz o tratamento: Mensagem, Log... 5
12 Capítulo 2. Arquitetura Nota Para entender os detalhes de transação acesse a documentação de referência: demoiselle.sourceforge.net/docs/reference/2.0.1/html/excecao.html 2.5. Entidade Na versão anterior foi criada a interface IPojo que servia apenas como marcação para identificar mais facilmente quais eram as classes de persistencia. Nesta versão esta interface deixa de existir Transação O controle de transação ganhou algumas funcinalidades. É possível agora definir quais métodos serão transacionais ou a classe inteira. É possivel interagir com a transação ou ainda criar estratégias de transação. Atualmente existem duas já disponibilizadas: JPATransaction e JTATransaction além da NoTransaction, que é utilizada quando nenhuma estratégia de transação é definida. Para ativar a transação, tanto por classe quanto por método, basta anotar a classe/método Isto indicará ao framework para gerenciar aquela public void insert(contact contact) { validateinsert(contact); this.getdelegate().insert(contact); auditbc.insert(new Audit("Inserting contact: " + contact.getcpf())); messagecontext.add(infomessages.contact_insert_ok, contact.getname()); Para definir qual estratégia de transação deverá ser utilizada, basta indicá-la no arquivo beans.xml que fica na pasta resources/meta-inf, como é mostrado no exemplo abaixo: <beans xmlns=" xmlns:xsi=" XMLSchema-instance" xsi:schemalocation=" beans_1_1.xsd"> <alternatives> <class>br.gov.frameworkdemoiselle.transaction.jpatransaction</class> </alternatives> </beans> 6
13 Persistência A camada de persistência é tratada pela extensão demoiselle-jpa, sendo possível o lançamento de outros mecanismos como JDO. Neste momento é disponibilizado apenas a persistência com JPA 2. Logo, o mapeamento de entidades permanece como na versão anterior apenas removendo a dependência da interface IPojo, que não existe mais Abstrações A classe JPACrud foi disponibilizada para abstrair as operações de CRUD( create, retrieve, update e public class ContactDAO extends JPACrud<Contact, Long> {... Neste exemplo você percebe que a classe tem dois parâmetros. O primeiro representa a entidade que será tratada e o segundo indica qual o tipo de ID Transação A interatividade com a transação agora independe do antigo TransactionContext, que deixou de existir. Bastando apenas ter na classe uma propriedade do tipo Transaction injetada; public class Simples private Transaction transaction; Estratégia Existem 3 tipos disponibilizados: NoTransaction JPATransaction JTATransaction 7
14 Capítulo 3. Persistência Dica Viste o guia de referência para maiores detalhes: reference/2.0.1/html/transacao.html 3.3. Filtros A realização de filtros deve ser feita utilizando os novos recursos oferecidos pelo JPA 2 8
15 Negócio A camada de negócio deixa de utilizar a interface IBussinessController para adotar a estratégia de utilização da anotação public class ContactBC extends DelegateCrud<Contact, Long, ContactDAO> {... Foi disponibilizada também uma abstração para as operações de CRUD. Para utiliza-la basta herdar da classe DelegateCrud, informando a entidade, o tipo de ID e uma classe que implemente a interface CRUD. 9
16 10
17 Visão A camada de visão é tratada através de extensões. No momento duas estão disponibilizadas: demoiselle-jsf(jee) e demoiselle-swing(se) demoiselle-jsf Esta é a extensão mais utilizada e recomendada para aplicações web. Nela é disponibilizado o JSF 2. O JSF 2 melhorou muito a maneira de configurar a aplicação, permitindo inclusive que configurações sejam feitas dentro de bibliotecas. Desta forma, a utilização da extensão reduz significativamente as configurações no arquivo web.xml e faces-config.xml Abstrações As abstrações são implementações da interface PageBean public interface PageBean extends Serializable { public String getcurrentview(); public String getnextview(); public String getpreviousview(); public String gettitle(); Desta interface derivam as abstrações de edição e listagem, que implementam os métodos de navegação e operações de edição ou listagem, dependendo de qual abstração foi utilizada: AbstractEditPageBean ou AbstractListPageBean Mensagem O contexto de mensagem pode ser injetado em qualquer camada da aplicação e o programador poderá escolher se adiciona a mensagem no contexto de mensagem ou se adiciona diretamente no FacesContext. Abaixo é um exemplo de como usar o utilitário Faces para public void handleexception(final DuplicatedCpfException cause) { Faces.addMessage("cpf", cause); Porém caso outras camadas estejam adicionando mensagens no contexto de mensagens, existe uma listener que varrerá as mensagens do contexto de mensagens a passará para o contexto do jsf de forma transparente. 11
18 Capítulo 5. private MessageContext public void insert(contact contact) { this.getdelegate().insert(contact); messagecontext.add(infomessages.contact_insert_ok, contact.getname()); Tratamento de exceções Regras de navegação As abstrações de Page Bean utilizam as anotações de navegação para descobrir qual a tela que deve ser renderizada. As anotações são: public class ContactEditMB { Passagem de parâmetros A passagem de parâmetros para o Bean ficou muito simples, basta criar uma propriedade no pagebean do tipo Parameter e sempre que estiver na classe esta propriedade estará sincronizada com public class ContactListMB extends PagedListPageBean<Contact, Long> private Parameter<Long> private ContactBC contactbc; 12
19 protected List<Contact> handleresultlist() { List<Contact> result = null; if (groupid.getvalue()!= null) { result = contactbc.find(new Group(groupId.getValue())); else { result = contactbc.findall(); return result; Nota Observem no exemplo que a propriedade groupid é utilizada no método handleresultlist, sem a necessidade de explícitamente obter o valor do request. Vale lembrar também que é possível criar uma propriedade com o scopo diferente do pagebean utilizando o Parameter. Para isto, basta anotar a propriedade com o scopo desejado demoiselle-swing Na versão anterior não era simples criar uma aplicação swing, agora basta utilizar o arquétipo de swing. 13
20 14
JBoss Seam. Vinicius Senger Co-fundador Globalcode Alberto J Lemos (Dr. Spock) Instrutor Globalcode. Globalcode Open4Education
JBoss Seam Vinicius Senger Co-fundador Globalcode Alberto J Lemos (Dr. Spock) Instrutor Globalcode Agenda > Introdução > Arquitetura típica Java EE 5 > O que é JBoss Seam? > Porque escolher o JBoss Seam?
Leia maisRepositórios JPA no Projeto ecafeteria
Repositórios JPA no Projeto ecafeteria Um objeto EntityManager representa uma ligação à base de dados. Quando um objeto EntityManger é criado também é criado um objeto EntityTransaction associado ao EntityManager.
Leia maisFrameworks funcionais para JSF que proporciona o desenvolvimento de aplicações computacionais WEB
Frameworks funcionais para JSF que proporciona o desenvolvimento de aplicações computacionais WEB Bruno Costa Silva 1, Ricardo Rufino 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil brunocostasilva62@hotmail.com,
Leia maisPadrões de codificação Java (JSF)
UNIVERSIDADE CEUMA Java (JSF) Versão 1.2 17/06/2013 Este é um modelo de codificação para desenvolvimento Java existente no Grupo Ceuma de Educação. Aqui encontram-se os padrões utilizados por equipes internas
Leia maisDemoiselle Component
Demoiselle Validation Component Guide Demoiselle Component Rodrigo Hjort Marlon Carvalho Demoiselle Validation... v 1. Configuração do Validation...
Leia maisInjeção de Dependências e Spring
Injeção de Dependências e Spring Daniel Cukier Prof. Fabio Kon IME-USP Conteúdo Exemplo Melhor maneira de aprender Injeção de Dependência (DI) Spring Service Locator Daniel Cukier - IME/USP 2/29 Exemplo
Leia maisUML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos
UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Roteiro A importância da UML para projetar sistemas. Principais características do diagrama de classes e de sequência.
Leia maisSisBIC Sistema de Gerenciamento de Bolsas de Iniciação
SisBIC Sistema de Gerenciamento de Bolsas de Iniciação 1. Introdução Robson Tenório Universidade Federal da Bahia Centro de Processamento de Dados Salvador Bahia Brasil {robsonrt}@ufba.br A Universidade
Leia maisFramework Demoiselle 2.0 QuickStart Emerson Saito Marlon Carvalho Rodrigo Hjort Serge Rehem
Framework Demoiselle 2.0 QuickStart Emerson Saito Marlon Carvalho Rodrigo Hjort Serge Rehem Sobre o QuickStart... v 1. Instalação... 1 1.1. Pré-requisitos... 1 1.2. Demoiselle Infra... 1 2. Criação da
Leia maisManual Demoiselle Wizard CETEC/CTCTA
Manual Demoiselle Wizard CETEC/CTCTA Histórico de Versões Data Versão Descrição Autor Revisor 07/05/2009 0.1 Mário Costa Flávio Lisboa 24/06/2009 0.2 25/06/2009 1.0 30/06/2009 1.1 12/01/10 1.1.1 07/05/10
Leia maisCarlos S. Rodrigues Leonardo Lino Vieira Eric Felipe Barboza Antonio Vasconcellos
Carlos S. Rodrigues Leonardo Lino Vieira Eric Felipe Barboza Antonio Vasconcellos Introdução Necessidade de diminuir a complexidade na interação código-banco de dados para o programador,além de diminuir
Leia maisJPA Com Hibernate. Paulo Ricardo Lisboa de Almeida. 1 Universidade Positivo
JPA Com Hibernate Paulo Ricardo Lisboa de Almeida 1 Modelo Necessário Modelo Necessário 2 JPA Mapeamento Direto entre as classes e o banco de dados Orientação a objetos para modelo relacional Feito através
Leia mais5 Trabalhos Relacionados
5 Trabalhos Relacionados Durante o trabalho desenvolvido nesta dissertação foram estudadas diversas tecnologias que têm objetivos semelhantes ao nosso. Os trabalhos estudados apresentam modelos de programação
Leia maisCriando uma aplicação web. Parte 1
Criando uma aplicação web Parte 1 Aplicações web Criaremos uma aplicação completa utilizando: Bancos de dados Modelo MVC JavaServer Faces (PrimeFaces) Um pouco sobre banco de dados Todas as aplicações
Leia maisFramework Demoiselle 2.3.0 QuickStart Emerson Oliveira Emerson Saito Luciano Borges Marlon Carvalho Rodrigo Hjort Serge Rehem
Framework Demoiselle 2.3.0 QuickStart Emerson Oliveira Emerson Saito Luciano Borges Marlon Carvalho Rodrigo Hjort Serge Rehem Sobre o QuickStart... v 1. Instalação... 1 1.1. Ambiente recomendado... 1
Leia maisEngenharia de Aplicações Sistemas Interactivos 2009/10! JAVASERVER FACES 1.2. Mestrado em Informática Universidade do Minho! 31!
JAVASERVER FACES 1.2 Mestrado em Informática Universidade do Minho! 31! Java Server Faces (JSF) JSP uma tecnologia" JSF uma framework MVC(-like)" - JSP para a apresentação (ou não)" utilização da JSF tag
Leia maisFramework Demoiselle Guia de Referência. Cleverson Sacramento. Emerson Saito. Marlon Carvalho. Rodrigo Hjort. Serge Rehem.
Framework Demoiselle 2.2.0 Guia de Referência Cleverson Sacramento Emerson Saito Marlon Carvalho Rodrigo Hjort Serge Rehem Thiago Mariano Wilson Guimarães Sobre o Guia de Referência... v I. Framework...
Leia maisTratamento de Erros. Sérgio Luiz Ruivace Cerqueira
Tratamento de Erros Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Agenda Introdução Try, catch, finally Unchecked Exceptions Como levantar exceções Boas práticas O problema Calculadora numero1:
Leia maisIntrodução ao Desenvolvimento de
Introdução ao Desenvolvimento de Aplicações Web com JSF e PrimeFaces Marcelo Vinícius Cysneiros Aragão ICC Inatel Competence Center marcelovca90@inatel.br Santa Rita do Sapucaí, 15 de março de 2016 Conteúdo
Leia maisFerramenta MVCASE - Estágio Atual: Especificação, Projeto e Construção de Componentes
Ferramenta MVCASE - Estágio Atual: Especificação, Projeto e Construção de Componentes Antônio Francisco do Prado Daniel Lucrédio e-mail: prado@dc.ufscar.br Resumo Este artigo apresenta a ferramenta CASE
Leia mais5 Arquitetura de implementação
Arquitetura de implementação 103 5 Arquitetura de implementação 5.1 Visão geral Nossa arquitetura é caracterizada pela construção de um ambiente para execução de aplicações hipermídia definidas segundo
Leia maisTutorial Hibernate + Vraptor para projetos Restful.
Tutorial Hibernate + Vraptor para projetos Restful. Configurando o Projeto Passo 1 Baixe o Eclipse IDE for Java EE Developers: https://www.eclipse.org/downloads. Passo 2 Vamos criar um novo projeto Maven,
Leia maisTUTORIAL INTEGRAÇÃO SPRING, HIBERNATE E MYSQL
TUTORIAL INTEGRAÇÃO SPRING, HIBERNATE E MYSQL Nesse tutorial será mostrado como integrar o uso do Spring MVC com Hibernate e MySQL para desenvolver aplicações web. Será utilizado o Spring Tools Suite,
Leia maisREST. Representational State Transfer. É um estilo arquitetural usado por muitas aplicações Web para estender as suas funcionalidades.
REST Representational State Transfer É um estilo arquitetural usado por muitas aplicações Web para estender as suas funcionalidades. Não é um padrão. Exemplo ASP.NET Web API namespace WebAPIApp.Models
Leia maisUniversidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça. Padrão Observer (Observador)
Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça Problema: Definir uma dependência um-para-muitos entre objetos, de forma quando o estado
Leia maisAnálise e Projeto de Software Parte II. Marcos Dósea
Análise e Projeto de Software Parte II Marcos Dósea marcosdosea@gmail.com Agenda Aula III Análise de Software Orientado à Objetos Motivação Marcos Dósea marcosdosea@gmail.com O que é análise e projeto?
Leia mais3 Tecnologias Relacionadas
Tecnologias Relacionadas 31 3 Tecnologias Relacionadas O objetivo deste capítulo é apresentar um resumo de cada tecnologia relacionada ao processo proposto nesta dissertação, mostrando suas principais
Leia maisContinuação... Criando a Interface e adiante
Continuação... Criando a Interface e adiante Racepitulando 1. Criar um projeto web: JavaServer Faces + Tomcat + Primefaces 2. Criar um banco de dados Postgresql 3. Adicionar os jars: javax.persistence
Leia maisPLATAFORMA SIGA RIO DAS VELHAS MANUAL DO CÓDIGO FONTE
PLATAFORMA SIGA RIO DAS VELHAS MANUAL DO CÓDIGO FONTE ATO CONVOCATÓRIO Nº 006/2016 CONTRATO DE GESTÃO IGAM Nº 002/IGAM/2012 09/2017 1 PLATAFORMA SIGA RIO DAS VELHAS MANUAL DO CÓDIGO FONTE ATO CONVOCATÓRIO
Leia maisSpring Framework. Parte 04 transações
Spring Framework Parte 04 transações Spring e transações O uso de transações é recorrente no desenvolvimento de sistema corporativos. Spring provê suporte ao controle de transações de duas maneiras: programática
Leia maisClasses de Projeto. Prof. Anderson Cavalcanti UFRN-CT-DCA
Classes de Projeto Prof. Anderson Cavalcanti UFRN-CT-DCA Linhas Gerais sobre as Classes de Projeto Especificação de Classes de Projeto Especificação de classes de fronteira Responsáveis pela interação
Leia mais2ª Edição Décio Heinzelmann Luckow Alexandre Altair de Melo
2ª Edição Décio Heinzelmann Luckow Alexandre Altair de Melo Novatec Copyright 2010, 2015 Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução
Leia maisCriando uma aplicação web
Criando uma aplicação web Aplicações web Criaremos uma aplicação completa utilizando: Bancos de dados Modelo MVC JavaServer Faces (PrimeFaces) Um pouco sobre banco de dados Todas as aplicações precisam
Leia mais3 Arquitetura para a Coordenação e a Composição de Artefatos de Software
Uma Arquitetura para a Coordenação e a de Artefatos de 23 3 Arquitetura para a Coordenação e a de Artefatos de Resumo Este capítulo apresenta a arquitetura ACCA, que é a parte central deste trabalho. A
Leia maisIntrodução: EJBs de Sessão. Prof. Fellipe Aleixo
Introdução: EJBs de Sessão Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) O Que é um Enterprise Bean? Written in the Java programming language, an enterprise bean is a server-side component that encapsulates
Leia mais5 Processo de Reificação e de Desenvolvimento com ACCA
Uma Arquitetura para a Coordenação e a Composição de Artefatos de Software 53 5 Processo de Reificação e de Desenvolvimento com ACCA Resumo Este capítulo visa esclarecer e descrever atividades existentes
Leia mais3 Ferramenta Proposta 3.1. Objetivos
3 Ferramenta Proposta 3.1. Objetivos O objetivo deste trabalho é a criação de um framework de testes que incorpore algumas das novas idéias encontradas na literatura. Sua principal característica deve
Leia maisObjetos e Componentes Distribuídos: EJB
: EJB Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta
Leia mais3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks
48 3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks Este capítulo apresenta uma visão geral da contribuição principal deste trabalho: uma abordagem orientada a aspectos para o
Leia maisInterfaces e Classes Abstratas
Interfaces e Classes Abstratas José Gustavo de Souza Paiva Problema Método obterarea()? Classes Abstratas Classes que funcionam como um molde Declarada com comando abstract Contém um ou mais métodos abstratos
Leia maisFigura 1: Eclipse criação de um Dynamic Web Project
Prática da Disciplina de Sistemas Distribuídos Web Services Parte 2 IFMA DAI Professor Mauro Lopes C. Silva 1. Criação de um Serviço Rest Utilizando a configuração realizada na prática anterior, iremos
Leia mais3 Uma Arquitetura Distribuída via WEB
24 3 Uma Arquitetura Distribuída via WEB Neste capítulo será apresentada a Arquitetura de Ambiente Distribuído no qual está implementado o Gerador VRML (VRMLGer) e o fluxo de dados que há entre as diferentes
Leia maisCurso Superior de Banco de Dados
Curso Superior de Banco de Dados Disciplina: Spring Prof. Emanuel Mineda Carneiro emanuel.mineda@fatec.sp.gov.br São José dos Campos - SP Dependências do Jeito Antigo Injeção de Dependência Inversão de
Leia maisSpring Framework. Parte 01 introdução e primeiros passos
Spring Framework Parte 01 introdução e primeiros passos O que é Spring Framework? É um framework de apoio ao desenvolvimento de aplicações corporativas em Java que surgiu como uma alternativa à complexa
Leia maisAgilizando o processo de redeploy de aplicações Java
classghost_ ClassGhost Agilizando o processo de redeploy de aplicações Java Conheça a funcionalidade deste framework que contribui para a agilidade e produtividade no processo processo de redeploy de aplicações
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 maisImplementar um exemplo de relacionamento entre classes um para muitos (1:N) e um para um (1:1). Sistema para uma Promotora de Evento Agenda Anual
Aula 09 Objetivo Implementar um exemplo de relacionamento entre classes um para muitos (1:N) e um para um (1:1). Sistema para uma Promotora de Evento Agenda Anual Banco de Dados 1. Crie um novo projeto
Leia maisUMA INTERFACE DE GERENCIAMENTO DE REDES DEFINIDAS POR SOFTWARE
UMA INTERFACE DE GERENCIAMENTO DE REDES DEFINIDAS POR SOFTWARE Fagner Jefferson de Araújo Silva; Whasley Sousa Cardoso; Marcelo Portela Sousa. Instituto Federal de Educação, Ciência e Tecnologia da Paraíba
Leia maisJUnit. Alexandre Menezes Silva Eduardo Manuel de Freitas Jorge
JUnit Alexandre Menezes Silva alexandre_crvg@hotmail.com Eduardo Manuel de Freitas Jorge emjorge1974@gmail.com 0 Sumário O que é?... 2 Pra que serve?... 2 Arquitetura... 2 Método de comparação assertequals...
Leia maisFramework Demoiselle. Guia de Referência. Cleverson Sacramento. Emerson Oliveira. Emerson Saito. Luciano Borges. Marlon Carvalho.
Framework Demoiselle Guia de Referência Cleverson Sacramento Emerson Oliveira Emerson Saito Luciano Borges Marlon Carvalho Rodrigo Hjort Serge Rehem Thiago Mariano Wilson Guimarães Sobre o Guia de Referência...
Leia maisAULA 07 HIBERNATE. Ao término desse capítulo você terá aprendido: Fundamentos do MVC Estrutura dos pacotes no NetBeans
AULA 07 HIBERNATE Ao término desse capítulo você terá aprendido: Fundamentos do MVC Estrutura dos pacotes no NetBeans O JDBC é uma das maneiras mais diretas para desenvolver um aplicativo Java que interaja
Leia maisInterfaces e Classes Internas
e Classes Internas SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade
Leia mais(UFF) JSF (I) TEPIS II
Aula 11: JSF (I) Diego Passos Universidade Federal Fluminense Técnicas de Projeto e Implementação de Sistemas II Diego Passos (UFF) JSF (I) TEPIS II 1 / 34 Java Server Faces API que provê um framework
Leia maisObjetos e Componentes Distribuídos: EJB e CORBA
: EJB e CORBA Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos
Leia maisProgramação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos
Programação Orientada a Objetos Vagner Luz do Carmo - Vluzrmos Questão 1 Dada a seguinte classe na linguagem JAVA: public class Carro { public String retornacor(){ ; return Azul ; private String retornachassi(){
Leia maisLevantamento de classes (Análise de casos de uso)
Plano Levantamento de classes (Análise de casos de uso) Prof. Cesar Augusto Tacla Levantamento no método APOO Projeto por padrões: MVC e Observador Estereótipos de classes Visão geral do método Engenharia
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 12 Beans Orientados a
Leia maisModel-View-Controller (MVC)
Model-View-Controller (MVC) por Rodrigo Rebou ças de Almeida Objetivo Separar dados ou lógica de negócios (Model) da interface do usuário (View) e do fluxo da aplicação (Control) A idéia é permitir que
Leia maisTratamento de Exceções
Tratamento de Exceções Carlos Bazilio Isabel Rosseti Depto de Ciência e Tecnologia Pólo Universitário de Rio das Ostras Universidade Federal Fluminense Motivação prever na implementação do sistema situações
Leia maisHerança entre Entidades JPA. Prof. Fellipe Aleixo
Herança entre Entidades JPA Prof. Fellipe Aleixo fellipe.aleixo@ifrn.edu.br ORM e Herança Para estar completo o mecanismo de mapeamento objeto-relacional precisa suportar o conceito de herança da orientação
Leia maisProcedimentos para Atualização Sisloc
Procedimentos para Atualização Sisloc Sumário: 1. Informações Gerais... 3 2. Atualização de versão no servidor... 3 Passo a passo... 3 3. Atualização de Versão nas Demais Máquinas... 9 Passo a passo...
Leia maisAula 10 POO 1 Classes Abstratas. Profa. Elaine Faria UFU
Aula 10 POO 1 Classes Abstratas Profa. Elaine Faria UFU - 2019 Problema Método obterarea()? Classes Abstratas Classes que funcionam como um molde Declarada com comando abstract Contém um ou mais métodos
Leia maisMODEL-VIEW-CONTROLER. Prof. Fellipe Aleixo
MODEL-VIEW-CONTROLER Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) O Que é MVC? Modelo de arquitetura de software Separar dados ou lógica de negócios (Model) da interface do usuário (View) e do fluxo
Leia maisEXERCÍCIOS DE REVISÃO DE CONTEÚDO QUESTÕES DISSERTATIVAS
EXERCÍCIOS DE REVISÃO DE CONTEÚDO QUESTÕES DISSERTATIVAS 1. Explique a(s) diferença(s) entre design pattern e framework. 2. Analisar o arquivo de configurações (web.xml) abaixo identificando quais suas
Leia maisEngenharia de Software
UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre 2 o Teste, 8 de Junho de 2016 Nome: Número: Este teste tem um conjunto de 10 perguntas de escolha
Leia maisDesenvolvimento para Web em Java. Profa Andréa Schwertner Charão DLSC/CT/UFSM Lamarck Heinsch Mestrando PPGI/CT/UFSM
Desenvolvimento para Web em Java Profa Andréa Schwertner Charão DLSC/CT/UFSM Lamarck Heinsch Mestrando PPGI/CT/UFSM Tecnologias Web Java (OO) Fonte: Wikipedia Tecnologias Web em Java Java SE: Applets Java
Leia maisUtilizando Swing com Hibernate
Programando com Java Artigo http://mballem.wordpress.com/ Utilizando Swing com Hibernate Utilizando a SessionFactory Autor Marcio Ballem: é formado em Sistemas de Informação e possui certificação Oracle
Leia maisTratando exceções em Java
Página 1 de 9 En Tecnologias Revistas Cursos Pocket videos DevWare Fórum Serviços Publicar Comprar Bem vindo a DevMedia! LOGIN: SENHA: Esqueci minha senha Cadastre-se post favorito comentários Tratando
Leia maisLidando com Java Obsoleto: Do Struts 1.0 ao CDI. Java na Crista da Onda
Lidando com Java Obsoleto: Do Struts 1.0 ao CDI Java na Crista da Onda Lidando com Java Obsoleto: Do Struts 1.0 ao VRaptor com CDI Java na Crista da Onda David Robert davidrobert@gmail.com linkedin.com/in/davidrobert
Leia maisRecapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... }
Recapitulando Orientação a objetos: programas organizados em torno da definição de classes, instanciação de objetos e troca de mensagens. Declaração de variáveis de referencia: Circle c; Criação/instanciação
Leia maisEnums em Java: utilização e persistência
Enums em Java: utilização e persistência Jadson José dos Santos jadsonjs@gmail.com Nas primeiras versões da linguagem Java, a única forma que existia para se utilizar constantes enumeradas era através
Leia maisManual do KXSLDbg. Keith Isdale Tradução: Marcus Gama
Keith Isdale Tradução: Marcus Gama 2 Conteúdo 1 Introdução 5 1.1 Recursos........................................... 5 2 Usando o KXSLDbg 6 2.1 Configurando uma Sessão do KXSLDbg.........................
Leia maisModelo de Componentes CORBA
Modelo de Componentes CORBA Cláudia Brito L. N. da Silva cblns@cin.ufpe.br Roteiro 1. Visão geral 2.! Definindo componentes! Implementando componentes! Empacotando componentes! Instalando componentes!
Leia maisProjeto Físico. Guia Rápido Do Desenvolvedor
Projeto Físico Guia Rápido Do Desenvolvedor Powerlogic UNIP Unidade de Projetos Versão 1.0 1 1. Histórico de Revisões Atualizado por Data de Atualização Revisado por Data de Revisão 1 Karen Ramalho Sousa
Leia maisFAURGS HCPA Edital 06/2010 PS 51 ANALISTA DE SISTEMA I Fábrica de Aplicativos Pág. 1
Pág. 1 HOSPITAL DE CLÍNICAS DE PORTO ALEGRE EDITAL Nº 06/20 /2010 0 DE PROCESSOS SELETIVOS GABARITO APÓS RECURSOS PROCESSO SELETIVO 51 ANALISTA DE SISTEMAS I Fábrica de Aplicativos 01. A 11. E 21. C 02.
Leia maisJPA 2.0 e Servlet 3.0
JPA 2.0 e Servlet 3.0 Elaine Silva Instrutora Globalcode Melissa Villela Instrutora Globalcode 1 Agenda > Objetivo > JPA 2.0 > Servlet 3.0 > Conclusões 2 Agenda > Objetivo > JPA 2.0 > Servlet 3.0 > Conclusões
Leia maisPadrões Fábrica. Simple Factory Factory Method
Universidade Federal de Uberlândia Faculdade de Computação Disciplina: POO2 Prof. Fabiano Azevedo Dorça Padrões Fábrica Simple Factory Padrões Fábrica Padrão Simple Factory: fornece interfaces para criar
Leia maisProgramação Java. Marco Fagundes. - Herança, Classes Abstratas e Interfaces Marco Fagundes -
Programação Java - Herança, Classes Abstratas e Interfaces - Marco Fagundes mfagundes@tre-pa.gov.br 1 Tópicos Herança Ligação Dinâmica Polimorfismo 2 Herança Herança é um conceito que mapeia as classes
Leia maisLogin Google. Copie a SSL URL, que no meu caso é https://localhost:44300/
Login Google Acessar NuGet Instalar o pacote Microsoft.Owin.Security.Cookies Instalar o pacote Microsoft.Owin.Security.Google Instalar Microsoft.Owin.Host.SystemWeb Habilitando SSL Para comunicar com Google
Leia maisPadrão de Projeto State
padrão state_ cinto de utilidades MÁQUINAS DE ESTADO COM O Padrão de Projeto State Desenvolver software é trabalhar com abstrações o tempo todo, pois estas nos ajudam a gerenciar a complexidade nos sistemas
Leia maisEngenharia de Software
UNIVERSIDADE DE LISBOA INSTITUTO SUPERIOR TÉCNICO Engenharia de Software LEIC/LETI, 3 o Ano, 2 o Semestre 2 o Teste, 16 de Junho de 2018 Duração: 90 minutos Nome: Número: Este teste tem um conjunto de
Leia maisArtigo - Blog Módulo CRM
Aplica-se a versão Este artigo foi criado a partir da versão SAP C4C verão 1411 Descrição Breve O objetivo deste Artigo é a criação de Parceiros de Negócio no Cloud for Customer (C4C) Autor do Artigo Cláudio
Leia maisPROGRAMAÇÃO ORIENTADA A OBJETOS. Aula de Revisão para AV1
Aula de Revisão para AV1 Conteúdo Programático desta aula Rever os principais conceitos apresentados Resolução de Exercícios para a prova Quantas bibliotecas de GUI existem em Java: a) Uma: Swing b) Duas:
Leia maisProjeto. Observatório Nacional de Clima e Saúde
Projeto Observatório Nacional de Clima e Saúde Coordenação Técnica Institucional: Fiocruz e INPE Coordenação Nacional CGVAM- Coordenação Geral de Vigilância Ambiental Secretaria de Vigilância em Saúde
Leia maisOrganizando seus Testes Funcionais AUMENTANDO A MANUTENIBILIDADE DE TESTES FUNCIONAIS ATRAVÉS DA ORIENTAÇÃO A OBJETOS.
page objects_ PAGE OBJECTS Organizando seus Testes Funcionais AUMENTANDO A MANUTENIBILIDADE DE TESTES FUNCIONAIS ATRAVÉS DA ORIENTAÇÃO A OBJETOS. Testes são parte fundamental do processo de desenvolvimento
Leia maisProgramação Orientada a Objetos. Professor: André Luis Meneses Silva br.geocities.com/programacao2ufs
Programação Orientada a Objetos Professor: André Luis Meneses Silva andreluis.ms@gmail.com br.geocities.com/programacao2ufs [ Conteúdo ] Objeto Mensagens Classe Encapsulamento Visibilidade Membros de Instância
Leia maisJava Server Faces Navegação de
Java Server Faces Navegação de Páginas Prof. Rodrigo Henrique Cunha Palácios rodrigopalacios@utfpr.edu.br Slides fornecidos pelo professor Prof. Edson Shozo Nishi Navegação de Páginas Controle de fluxo
Leia maisTratamento de Exceções. Grupo de Linguagens de Programação Departamento de Informática PUC-Rio
Tratamento de Exceções Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Terminologia Definições: Exceção é a ocorrência de uma condição anormal durante a execução de um método Falha
Leia maisUnidade 7: Documentação de Código A Importância dos Comentários Prof. Daniel Caetano
Linguagem de Programação 1 Unidade 7: Documentação de Código A Importância dos Comentários Prof. Daniel Caetano Objetivo: Desenvolver a habilidade de comentar código adequadamente INTRODUÇÃO Até o momento
Leia maisComputação II - Java - Prova 1 Prof. Adriano Joaquim de Oliveira Cruz /05/13. Questão: Total Pontos: Gráu:
Computação II - Java - Prova 1 Prof. Adriano Joaquim de Oliveira Cruz - 2015/05/13 Questão: 1 2 3 4 5 6 Total Pontos: 20 15 15 10 10 30 100 Gráu: 1. Defina os termos listados a seguir: (a) (10 Pontos)
Leia maisRUP RATIONAL UNIFIED PROCESS PRÁTICAS RECOMENDADAS. Prof. Fabiano Papaiz IFRN
RUP RATIONAL UNIFIED PROCESS PRÁTICAS RECOMENDADAS Prof. Fabiano Papaiz IFRN O RUP recomenda as seguintes práticas que devem ser utilizadas no desenvolvimento de um software: 1. Desenvolver de forma iterativa
Leia maisFigura 16 Niagara - Visão de grupos de notas.
Conclusão 6 Conclusão 6.1 Trabalhos Relacionados Dentre as funcionalidades fornecidas pela interface gerada pelo framework, em destaque está a possibilidade do zoom livre. Disponibilizar esta funcionalidade
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro
7 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract
Leia maisEA975 - Laboratório de Engenharia de Software
EA975 - Laboratório de Engenharia de Software Turmas K/L - 2017 Aula 7 Componentes de Software Um componente de software é um segmento de código que pode ser reusado, eventualmente após um processo de
Leia maisAvaliação de Frameworks de Produtividade para aplicações CRUD
Superintendência de Informática - SINFO/UFRN Avaliação de Frameworks de Produtividade para aplicações CRUD Leonardo René Campos Analista de TI Agenda 1. Introdução 2. Objetivos 3. Critérios de Avaliação
Leia maisSingleton e Adapter. Professor: Nazareno Andrade (baseado no material de Hyggo Almeida e Jacques Sauvé)
e Adapter Professor: Nazareno Andrade (baseado no material de Hyggo Almeida e Jacques Sauvé) O que vimos na última aula? Factory Method Abstract Factory 2 O que veremos hoje? (padrão de criaçã) Adapter
Leia mais4.6. UML Diagramas de componentes
Engenharia de Software 4.6. UML Diagramas de componentes Nuno Miguel Gil Fonseca nuno.fonseca@estgoh.ipc.pt Componentes são partes, executáveis e substituíveis, (idealmente reutilizáveis) de um sistema
Leia mais