arquitetura de aplicações j2eejhcf/cursos/dim341s03.2/j2ee.pdf · session beans?modelo de...
TRANSCRIPT
![Page 1: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/1.jpg)
Arquitetura de Aplicações J2EE
Jorge FernandesOutubro de 2003
![Page 2: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/2.jpg)
J2EE? O que é? Como se organiza? Como funciona? Elementos? Arquitetura Típica
![Page 3: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/3.jpg)
Componentes de Software? Reuso é um processo
? Publicar interfaces? Distribuir componentes
? Componentes de sw? Unidades coesas de código (sw) que possuem uma interface
pública bem definida
? Utilizar múltiplas cópias do componente em várias configurações de sistema, baseado na interface do componente
? Reusabilidade é uma propriedade
![Page 4: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/4.jpg)
Reusabilidade relaciona-se com Acoplamento e Coesão
? Coesão? Propriedade desejável, que demonstra unidade
conceitual de dos elementos que formam um módulo de software
? Acomplamento? Propriedade indesejável, que demonstra a falta
de coerência no no agrupamento de elementos que formam um módulo de software
![Page 5: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/5.jpg)
Classes e componentes? O que é uma classe?
? UNIDADE DE MODELAGEM DE OBJETOS, ATRAVÉS DE métodos e atributos, usando uma linguagem de programação orientada a objetos
? Relacionado a codificação? Quando os métodos de uma classe são
públicos, podemos dizer que eles formam a interface da classe? Por princípio, os atributos são privados
![Page 6: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/6.jpg)
classe classemetods
metodos
Pacote x
metods
metods
Componente x.jarmetods
metods
classe classemetods
metodos
Pacote x
metods
metods
Gerando ou construindo um componenteCriando um “build”
código
componente
Métodos públicosFormam a interface de componentes
![Page 7: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/7.jpg)
Componente x.jar
metods
metods
Componente x.jar
metods
metods
Componente x.jar
metods
metods
Ciclo de desenvolvimento de software com reuso
aplicacao
Componente x.jar
metods
metods
Componente x.jar
metods
metods
Novo ComponenteProduzido
metods
metods
Cópia (reuso)
Publicacao e divulgacãoDe novos componentes
Componente x.jar
metods
metods
Código da aplicação
aplicação
biblioteca
![Page 8: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/8.jpg)
A Solução da Tecnologia Java
Um amplo espectro de Plataformas,edições, configurações e perfis
![Page 9: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/9.jpg)
Edições Java 2 e Seus Dispositivos. Fonte [CLDC1.0a]
![Page 10: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/10.jpg)
J2EE – Plataforma para Desenvolvimento de Software e Sistemas Corporativos
? Conjunto de bibliotecas, interpretadores e outras ferramentas adequadas para desenvolvimento e execução de aplicações distribuídas de uso corporativo
? Objetivos? Padronização
? Integração entre modelo web e modelo corporativo
? Simplificação na construção de componentes? Reuso de componentes? Agilidade e produtividade na construção? Desempenho? Escalabilidade
![Page 11: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/11.jpg)
Diferentes Perspectivas de Evolução de Sistemas Corporativos
? O que pode variar?? Cliente? Regras de negócio? Sistemas e bases de
dados? Infra-estrutura
Apresentação
Regras de funcionamentoDo negócio
Bases de dados
Infra-estrutura
![Page 12: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/12.jpg)
Infra-estrutura de Aplicações Corporativas
Bases de Dados
Subsistemas eRegras de Negócios
InterfaceWeb/Wap/J2ME/XML
Sistemas Legados
![Page 13: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/13.jpg)
Variando os Clientes
web
Regras de funcionamentoDo negócio
Bases de dados
wap tv xml
Filtro
![Page 14: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/14.jpg)
Variando as Regras
apresentação
Bases de dados
Ambiente de Runtime Padronizado
Módulo #1
Módulo #2
Módulo #3
Módulo #n
![Page 15: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/15.jpg)
Dependências entre classes ou pacotes
utilitário
componente
componente
Componente
aplicacao
utilitários
Componentes de negócios
![Page 16: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/16.jpg)
Variando os Dados
apresentação
SGDB #1
Regras de funcionamentoDo negócio
SGDB #2 SGDB #n
Integrador de dados
![Page 17: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/17.jpg)
Modelo de Infra-estrutura abstrata para Aplicações Corporativas
web wap tv xml
Filtro
Módulo #1
Módulo #2
Módulo #3
Módulo #n
SGDB #1 SGDB #2 SGDB #n
Integrador de dados
Ambiente de Runtime Padronizado
![Page 18: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/18.jpg)
Ambiente J2EE
![Page 19: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/19.jpg)
Container? Ambiente de runtime padronizado que provê
serviços específicos para clientes? Qualquer plataforma J2EE deve conter este
runtime? Serviços padronizados
? Gerenciamento de transação? Gerenciamento de sessão web? Messaging? Instalação e configuração
![Page 20: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/20.jpg)
APIs J2EE? JSP – Java Server Pages? Enterprise JavaBeans? Java API for XML
Processing (JAXP)? J2EE Connector
Architecture? infrastructure para
interacting com Enterprise Information System como ERP, CRM, and other
? JDBC 2.-? Java Transaction – JTA
? JNDI – Java Naming and Directory
? Java IDL – InterfaceDefinition Language
? Java RMI? Java Message Service? Java Authentication and
Authorization Service –JAAS
? JavaMail? JavaBeans
![Page 21: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/21.jpg)
APIs J2EE
![Page 22: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/22.jpg)
JSP – Java Server Pages? Tecnologia de componentes
para interface com usuário web? Html – wml – xml –
? O componente é o JSP? O foco é em apresentação,
em vez de controle
![Page 23: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/23.jpg)
Enterprise JavaBeans? Tecnologia de componentes para regras de
negócios e persistência de objetos? Componentes:
? Entity beans? Modelo de componente especializado para representar
entidade de dados que pode ser persistida junto ao um SGBD
? Session beans? Modelo de componente EJB especializado para representar
as regras de negócios da organização, sistema ou aplicação
? Message beans? Modelo de componentes para tratamento de integração com
sistemas através de eventos ou mensagens assíncronas
![Page 24: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/24.jpg)
Java API for XML Processing (JAXP)
![Page 25: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/25.jpg)
J2EE Connector Architecture? infrastructure para
interacting com Enterprise Information System como ERP, CRM, and other
![Page 26: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/26.jpg)
JDBC 2.-
![Page 27: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/27.jpg)
Java Transaction – JTA
![Page 28: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/28.jpg)
JNDI – Java Naming and Directory
![Page 29: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/29.jpg)
Java IDL – Interface Definition Language
![Page 30: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/30.jpg)
Java RMI
![Page 31: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/31.jpg)
Java Message Service
![Page 32: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/32.jpg)
Java Authentication and Authorization Service – JAAS
![Page 33: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/33.jpg)
JavaMail
![Page 34: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/34.jpg)
JavaBeans? Modelo de componente originalmente
concebido para criar componentes de GUI? É um idioma de programação? Prescreve um modo padronizado de escrita
de mensagens, métodos de acesso a propriedades e tratamento de eventos
![Page 35: Arquitetura de Aplicações J2EEjhcf/cursos/DIM341s03.2/J2EE.pdf · Session beans?Modelo de componente EJB especializado para representar as regras de negócios da organização,](https://reader034.vdocuments.pub/reader034/viewer/2022043016/5f3937faf5c2ac5fbc3b4341/html5/thumbnails/35.jpg)
Um exemplo de JavaBeanclass Componente {
setNome(String nome) {// especificação de que o componente tem uma
propriedade nome, que é alterável}String getNome() {// especificação de que o componente tem uma
propriedade nome, que é alterável}
}