Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this presentation? Why not share!

Framework JGenesis

on

  • 1,172 views

Apresentação realizada pela Cleidimar Vieira no encontro #tasafoemacao #misturado no auditório do CESUPA no dia 14 de Outubro de 2010

Apresentação realizada pela Cleidimar Vieira no encontro #tasafoemacao #misturado no auditório do CESUPA no dia 14 de Outubro de 2010

Statistics

Views

Total Views
1,172
Views on SlideShare
1,037
Embed Views
135

Actions

Likes
1
Downloads
12
Comments
0

5 Embeds 135

http://www.tasafo.com.br 112
http://tasafo.wordpress.com 10
http://localhost:8080 6
http://localhost:8820 6
http://www.tasafo.com.br.s3-website-us-east-1.amazonaws.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Framework JGenesis Framework JGenesis Presentation Transcript

  • JGenesis – Aplicações Java/Swing Fácil e Rápido 14/10/2010 Cleidimar Vieira – Framework JGenesis 1
  • Introdução O uso de frameworks em software é a saída mais lucrativa para desenvolvedores e empresas. Tudo para ontem, gastando pouco, equipe pequena e sistema tem que funcionar. 14/10/2010 Cleidimar Vieira – Framework JGenesis 2
  • Roteiro • Tudo começou... • O que é? • Nossa aplicação • Integração com outros frameworks • Integração com outros softwares • Vantagens de usar • O que é preciso para usar? • Componentes (Servidor, Cliente e Swing) • NamedQueries 14/10/2010 Cleidimar Vieira – Framework JGenesis 3
  • Tudo começou... Idealizador: Marcos Aurélio Mendes Moura Equipe de desenvolvimento: Fabrício Barroso de Carvalho e Regis Pires Magalhães Equipe Técnica: Cledson Santos, Cleidmar Vieira, Diogo Emílio, Leandro Henrriques, Marcelo Giovani, Michell Jaim, Luis Renato Desafios: Agradar a empresa e a equipe técnica. 14/10/2010 Cleidimar Vieira – Framework JGenesis 4
  • O que é? É uma framework que provê uma arquitetura genérica de desenvolvimento de aplicações corporativas de alta- escalabilidade, cliente/servidor, com padrão MVC. Desenvolvida em Java, seu foco principal, hoje, é o Desktop, mas pode ser utilizada em WEB. Open-source e free. 14/10/2010 Cleidimar Vieira – Framework JGenesis 5
  • Nossa aplicação • 259 classes no BO (186 BasicBOImpl e 69 SimpleBOImpl) • 23 interfaces no DAO • 10 classes concretas DAO ORM • 19 classes concretas DAO JDBC • 403 classes no GUI • 168 classes no factory de relatórios • 635 classes jasper • 232 classes bean • 9 classes bean “mãe” e 28 subclasses • 20 sistemas desenvolvidos 14/10/2010 Cleidimar Vieira – Framework JGenesis 6
  • Nossa aplicação • Estados do Pará, Piauí, Maranhão, Manaus, São Paulo; • Empresas: Armaém Paraíba (Socic e Metidieri) e Lojas Rianil, Louvre Magazine, Rápido London, Cartão CredShop; • Comunicação via frame-relay, rádio, internet; • Sistema híbrido ( ZIM e Java ); 14/10/2010 Cleidimar Vieira – Framework JGenesis 7
  • Integração com outros frameworks Container com diversos serviços: Padrão de Projeto Inversion-of-Control(IoC) / Dependency Injection; Controle de Transaction; Acesso remoto; O objetivo do Hibernate é diminuir a complexidade entre os programas Java, baseado no modelo orientado a objeto, que precisam trabalhar com um banco de dados do modelo relacional. O JGenesis provê a implementação básica para a camada de acesso a dados (DAO) através do Hibernate. JPA Uso de Annotations 14/10/2010 Cleidimar Vieira – Framework JGenesis 8
  • Integração com outros softwares Log4J C3P0 14/10/2010 Cleidimar Vieira – Framework JGenesis 9
  • Vantagens de usar É open-source e “De grátis”; Todas as vantagens do Java; Suporta vários bancos de dados; Configurações em arquivos xml; Provê um pool de conexões; Arquitetura Client/Server (3-tier); ( RMI, Hessian ou HTTP ) Uso Design Pattern BD, DAO e BO ( MVC ); Vários componentes Swing ( automatizados ); 14/10/2010 Cleidimar Vieira – Framework JGenesis 10
  • Vantagens de usar Equipe de desenvolvimento focada. ( não na infra-estrutura por trás do desenvolvimento); Reduz esforços de codificação; Aumenta a produtividade; Reduz a possibilidade de erros; Torna a arquitetura da aplicação homogênea, facilitando sua manutenção. 14/10/2010 Cleidimar Vieira – Framework JGenesis 11
  • O que é preciso para usar? Conhecimento em OO, Java, Annotation ou xml, Design Pattern; Conhecer o JGenesis; Configurar os arquivos xml especfíficos: jgenesis.xml, jgenesis-bo.xml e hibernate.cfg.xml; Acoplar o módulo ao NetBeans; Ter um banco de dados; 14/10/2010 Cleidimar Vieira – Framework JGenesis 12
  • O que é preciso para usar? Bibliotecas dos “parceiros”; jgenesis.xml - Declara os (data sources), as fábricas de sessões (hibernate), os DAOs e o query loader (data sources de queries). jgenesis-bo.xml - Declara os BOs e alguns parâmetros para a comunicação remota (RMI ou HTTP). hibernate.cfg.xml - Configuração da fábrica de sessão e arquivos de mapemento dos Beans ( xml ou annotation ) log4j.properties – Configuração da propriedades da API de logging Log4j, 14/10/2010 Cleidimar Vieira – Framework JGenesis 13
  • O que é preciso para usar? 14/10/2010 Cleidimar Vieira – Framework JGenesis 14
  • 14/10/2010 Cleidimar Vieira – Framework JGenesis 15
  • 14/10/2010 Cleidimar Vieira – Framework JGenesis 16
  • 14/10/2010 Cleidimar Vieira – Framework JGenesis 17
  • Componentes no Servidor CAMADA MODELO JgenesisDAO – interface de acesso a dados, encapsula CRUD; BasicHibernateDAO - Impl. JGenesisDAO, utiliza o Hibernate; BasicJdbcDAO - Impl. JGenesisDAO, utiliza o JDBC; CAMADA CONTROLE JgenesisBO e SimpleBO - Interfaces para a lógica de negócio; SimpleBOImpl – Impl. SimpleBO (métodos doRequest e doAction); BasicBOImpl - Impl. JGenesisBO com o básico que um BO deve oferecer (actions save, update, delete, find ); 14/10/2010 Cleidimar Vieira – Framework JGenesis 18
  • Componentes no Servidor CAMADA CONTROLE - SimpleBO Método doRequest – é o início do tráfego cliente/BO. JGRequest – Objeto que transmite informações do cliente que serão usada no BO; JGResponse – Objeto usado para transportar as informações do BO para o cliente; Método doAction – Semelhante do doRequest, porém pode ser usado no BO; JGContext – Contêiner de objetos e parâmetros em qualquer ponto do BO; InfoBO - Interface com métodos com informações do servidor; InfoBOImpl - Impl. InfoBO; 14/10/2010 Cleidimar Vieira – Framework JGenesis 19
  • Componentes no Cliente CAMADA VISÃO PersistentBD - Impl. padrão Business Delegate, utilizado pelo cliente para invocar métodos (que podem ser, inclusive, remotos)do BO; BeanWrapper -Pode ser usado tanto no cliente como no servidor. Encapsula o bean 14/10/2010 Cleidimar Vieira – Framework JGenesis 20
  • DAO BO BD Data Access Object Bussiness Object Bussiness Delegate Servidor Servidor Cliente Modelo Controle Visão BeanManager 14/10/2010 Cleidimar Vieira – Framework JGenesis 21
  • Componentes Swing BeanManager - Responsável por gerenciar objetos de uma classe persistente, em outras palavras, de um Bean. Ele aciona a lógica de negócio (JGenesisBO) através do PersistentBD; É o elo principal entre as camadas do processo; É atributo essencial aos componentes Swing; Está associado a um bean; Pode estar associado ao um BO ( senão pega o default ); Através do JGBeanNavigator aciona as actions do BO. 14/10/2010 Cleidimar Vieira – Framework JGenesis 22
  • Componentes Swing JGBeanNavigator - Barra de ferramentas para gerir o bean; JGButtonPanel – Botões variados; BeanSetTableManager - Responsável por gerenciar objetos uma tabela (JTable) de beans; JGStatusBar - Uma barra de status que exibe o Tooltip do componente em foco no formulário, e uma barra de progresso. JGFindBean - Jjanela de buscas; JGFindButton - Invoca uma janela de consulta JGFindBean; JGFindTextField - Consulta por um atributo do bean; JGTextField e "sua turma mascarada" - São caixa de texto; (JGMaskTextField, JGNumberTextField, JGDateTextField) JGComboBox e JGLookupComboBox – Combobox; JGOptionPane – Janelas de diálogos; 14/10/2010 Cleidimar Vieira – Framework JGenesis 23
  • Componentes Swing 14/10/2010 Cleidimar Vieira – Framework JGenesis 24
  • Named queries Declaração de um query loader no jgenesis-bo.xml; Queries no banco de dados através do FqueryMain; Chamada a query do banco através de parâmetros como nome e parâmetros; 14/10/2010 Cleidimar Vieira – Framework JGenesis 25
  • 14/10/2010 Cleidimar Vieira – Framework JGenesis 26