Enterprise Java Beans (III)
|
|
|
- Washington Melgaço Meneses
- 9 Há anos
- Visualizações:
Transcrição
1 Enterprise Java Beans (III) Professor: Diego Passos UFF Baseado no material original cedido pelo Professor Carlos Bazilio
2 Última Aula Disponibilização do EJB no container. Arquivo descritor. Opções de Segurança. Empacotamento do EJB. Utilização do Bean no lado cliente. Clientes locais vs. Clientes Remotos. Localização de interfaces home. Criação de beans. Invocação de métodos.
3 Nesta Aula Anotações. E como são usadas para implementar EJBs. Especificidades das beans de sessão. Beans stateless. Beans statefull. Gerenciamento (pelo container). Suporte transacional.
4 Anotações Atualmente, Java inclui uma funcionalidade chamada de Annotations. São pequenas notas deixadas pelo programador ao longo do código. Metadados do código-fonte. São usadas para vários objetivos: Como informações ao compilador. Supressão de warnings, detecção de erros,... Para geração de artefatos de disponibilização. Geração de XMLs. Processamento em tempo de execução.
5 Anotações: Sintaxe Básica Anotações são iniciadas pelo Por convenção, anotações geralmente aparecem em uma linha sozinhas. Há exceções. Anotações contém um void mysupermethod(){...}
6 Anotações: Sintaxe Básica (II) Anotações podem incluir elementos. Listados entre parêntesis. Elementos podem ou não ter nomes. Elementos sempre têm name = Benjamin Franklin", date = "3/27/2003" ) class MyClass() {... = "unchecked") void mymethod() {... void mymethod() {... }
7 Anotações: Sintaxe Básica (III) Anotações podem incluir elementos. Listados entre parêntesis. Elementos podem ou não ter nomes. Elementos sempre têm name = Benjamin Franklin", date = "3/27/2003" ) class MyClass() {... = "unchecked") void mymethod() {... void mymethod() {... }
8 Anotações: Sintaxe Básica (IV) Anotações estão associadas a partes do código próximas. Exemplo: a declaração que segue a anotação. A um mesmo trecho de código, podemos associar múltiplas = "Jane class MyClass {... }
9 Anotações: Definindo um tipo de Anotação Em muitos casos, desenvolvedores só precisam utilizar tipos pré-definidos de anotação. Às vezes, no entanto, é interessante definir novos tipos. Exemplo: documentação de classes. public class Generation3List extends Generation2List { // Author: John Doe // Date: 3/17/2002 // Current revision: 6 // Last modified: 4/12/2004 // By: Jane Doe // Reviewers: Alice, Bill, Cindy } // class code goes here
10 Anotações: Definindo um tipo de Anotação (II) Pode-se definir uma anotação para substituir os ClassPreamble { String author(); String date(); int currentrevision() default 1; String lastmodified() default "N/A"; String lastmodifiedby() default "N/A"; // Note use of array String[] reviewers(); }
11 Anotações: Definindo um tipo de Anotação (III) Código ( author = "John Doe", date = "3/17/2002", currentrevision = 6, lastmodified = "4/12/2004", lastmodifiedby = "Jane Doe", // Note array notation reviewers = {"Alice", "Bob", "Cindy"} ) public class Generation3List extends Generation2List { // class code goes here }
12 Anotações: Tipos Padronizados Existem vários tipos de anotação padronizados pela linguagem. Indica que um elemento está obsoleto e não deve mais ser usado. Elementos: classes, métodos, atributos. Uso de elemento anotado causa warning de static void deprecatedmethod() {... }
13 Anotações: Tipos Padronizados (II) Indica que elemento (método, tipicamente) deve sobrecarregar um correspondente na superclasse. Não é necessário, mas evita erros. Se método anotado não sobrecarrega outro, compilador gera um erro. // Se não houver um método com mesma assinatura na superclasse, // compilador acusa int overriddenmethod() {...}
14 Anotações: Tipos Padronizados (III) Diz ao compilador para suprimir mensagens de warning que resultariam da compilação. Útil quando estamos cientes do warning e julgamos que ele não é relevante para aquela void usedeprecatedmethod() { // Tentamos usar um método marcado como deprecated. // Sabemos disso e assumimos a responsabilidade. objectone.deprecatedmethod(); }
15 Anotações: Tipos Padronizados (IV) Há dois tipos de warnings em Java: deprecation e unchecked. É possível desativar múltiplos warnings de uma só unchecked }) void usedeprecatedmethod() { // Tentamos usar um método marcado como deprecated. // Sabemos disso e assumimos a responsabilidade. objectone.deprecatedmethod(); }
16 Anotações: Processamento Quando um código em Java é compilado, as anotações são processadas pro plug-ins do compilador. Chamados também de processadores de anotações. Estes processadores podem gerar: Mensagens durante a compilação. Outros arquivos Java. Outros recursos (como arquivos XML). Os artefatos gerados pelos processadores podem também ser compilados e processados. Podem também alterar o código anotado. Note que as anotações podem ser incluídas nas classes compiladas. Ficam disponíveis em tempo de execução.
17 Anotações: Usos Típicos Anotações são utilizadas pelo compilador, como já visto. Mas é também comum o uso das mesmas em Frameworks. Podem gerar configurações a partir de anotações do código. Evitam a necessidade de referenciar classes, métodos em arquivos externos. Exemplos de frameworks (já vistos no curso) que permitem o uso de anotações: Servlets: /url ) Define mapeamento de URL para o servlet anotado. JSF (beans gerenciadas): Definem que classe anotada é uma bean gerenciada com um escopo específico.
18 EJB 3 EJB 3 difere das versões anteriores pelos seguintes fatores: Uso de POJO s (Plain Old Java Objects); Classes simples em Java; O modelo inicial de componentes (interfaces Home e descritores XML, por exemplo) foi substituído por objetos e serviços EJB oferecidos pelo contêiner; Anotações em Java; Permitem a definição de atributos de código e opções de configuração diretamente no código Java; Injeção de Dependência. Referência:
19 EJB 3: Exemplos da Primeira Aula Nas duas primeiras aulas, vimos a maneira original de criar/manipular EJBs. Implementação de uma EJB precisa dos seguintes passos: Definição das interfaces cliente (local e remota). Definição das interfaces home (local e remota). Implementação do bean. Criação do deployment descriptor. Criação de arquivos de configuração específicos do container. Criação das classes geradas pelo container. Empacotamento da EJB em um arquivo.jar. Como é este processo na especificação EJB 3.0? Definição das interfaces cliente (local e remota). Implementação do bean. Compilação e empacotamento.
20 EJB 3: Criação da Interface Cliente (Remota) Não precisa estender a interface EJBObject. Utiliza a Opcional se houver apenas a interface remota. É uma POJO. import public interface ProfileManager { public Profile getprofile(string acctname) throws NoSuchPersonException; }
21 EJB 3: Criação da Interface Cliente (Local) Não precisa estender a interface EJBLocalObject. Utiliza a Opcional se houver apenas a interface local. É uma POJO. Pode estender a interface remota, por exemplo. import public interface ProfileManagerLocal extends ProfileManager { }
22 EJB 3: Implementação da Bean Utiliza várias indica EJB de Sessão indica que a EJB terá interface cliente indica que a EJB terá interface cliente local. @Local(ProfileManagerLocal.class) public class ProfileManagerBean implements ProfileManagerLocal { }...
23 EJB 3: Implementação da Bean (II) Não é necessário implementar a interface SessionBean. Consequências: Não é necessário implementar os métodos ejbcreate(), ejbpassivate(),..., a menos que precisemos deles. @Local(ProfileManagerLocal.class) public class ProfileManagerBean implements ProfileManagerLocal { }...
24 import EJB 3: Implementação da Bean (III) Se precisarmos dos métodos de gerência do ciclo de vida, podemos dar quaisquer nomes a eles. No entanto, devemos identificá-los public class ProfileManagerBean implements ProfileManagerLocal
25 EJB Tipos de Beans Como visto na primeira aula, há três tipos de EJBs. EJBs de sessão. EJBs de entidade. EJBs orientadas à mensagens. A diferença entre os tipos de EJB está no tipo de funcionalidade que cada uma oferece. Especificamente, as EJBs de sessão se prestam a fornecer um conjunto bem definido de funcionalidades a clientes. Clientes obtém uma referência a uma EJB de sessão. Pedem um ou mais serviços.
26 EJB Beans de Sessão Beans de sessão recebem este nome pelo seu ciclo de vida típico. Elas não são persistentes. Seu ciclo de vida em geral é definido por sessões de uso. Beans de sessão podem ser subdivididas em mais duas classificações: Stateless Session Beans: beans de sessão que não guardam estado. Stateful Session Beans: beans de sessão que guardam estado.
27 EJB Beans de Sessão Stateless Estas beans não guardam estado relacionado ao cliente entre chamadas dos seus métodos. O resultado de um método não depende das chamadas anteriores feitas pelo cliente. Como estas beans não guardam estado, suas instâncias são intercambiáveis. Qualquer instância pode ser usada a qualquer momento para tratar pedidos de qualquer cliente. Container pode guardar um pool de instâncias. Ao ser requisitada por um cliente, container retorna qualquer instância do pool. Note que declarar uma bean como stateless não garante esta característica. É tarefa do desenvolvedor garantir isso. Container simplesmente assume como verdade.
28 EJB Beans de Sessão Stateful Estas beans armazenam estado da interação com o cliente. Execução de métodos pode alterar o estado interno da bean. Instâncias das beans pertencem a seus clientes específicos. Não podem ser usadas por outros clientes. Cliente dono de uma instância só a perde quando ativamente libera o recurso, ou quando a referência expira.
29 EJB Stateful vs. Stateless Vamos ilustrar a diferença entre as versões stateful e stateless com um exemplo. O exemplo utilizado na aula anterior, do ProfileManagerBean, era um exemplo de bean stateless. Ele recebia requisições para encontrar um perfil. Ele retornava o resultado na forma de objetos do tipo Profile. A partir daí, interação do cliente é com o objeto Profile. Suponha, no entanto, que desejamos transformar o próprio perfil em uma bean de sessão. Cliente requisita o carregamento do perfil. Bean carrega o estado. Métodos da bean permitem manipulação do perfil. Exemplo de uma bean de sessão stateful.
30 EJB Bean de Sessão Stateful Outro Exemplo Exemplo do tutorial da sun: Suponha um sistema web de vendas de livro que utiliza o conceito de carrinho de compras. Queremos implementar o carrinho de compras como uma EJB de Sessão. O carrinho deve ser capaz de manipular o conjunto de livros pretendidos pelo cliente. Adicionar livros. Remover livros. Listar o conteúdo do carrinho. Note que este é um exemplo claro de um bean stateful. Após a chamada de um dos métodos de negócio, estado da bean é alterada. Uma instância da bean deve ser associada a seu cliente, e apenas a ele.
31 EJB Bean de Sessão Stateful Outro Exemplo (Interface) Neste exemplo, declaramos uma interface remota. Listamos os métodos de negócio. package com.sun.tutorial.javaee.ejb; import java.util.list; import public interface Cart { } public void initialize(string person) throws BookException; public void initialize(string person, String id) throws BookException; public void addbook(string title); public void removebook(string title) throws BookException; public List<String> getcontents(); public void remove();
32 EJB Bean de Sessão Stateful Outro Exemplo (Bean) A implementação define que a bean é stateful através da Ela implementa a interface Cart (que é remota). package com.sun.tutorial.javaee.ejb; import java.util.arraylist; import java.util.list; import javax.ejb.remove; import public class CartBean implements Cart { String customername; String customerid; List<String> contents;...
33 EJB Bean de Sessão Stateful Outro Exemplo (Bean) Devemos implementar os métodos de negócio, normalmente. public void initialize(string person) throws BookException { if (person == null) { throw new BookException("Null person not allowed."); } else { customername = person; } customerid = "0"; contents = new ArrayList<String>(); }...
34 EJB Bean de Sessão Stateful Outro Exemplo (Bean) Podemos implementar métodos de ciclo de vida da bean, se necessário. Basta anotar métodos quaisquer com as anotações public void whenactivated() {... public void whenpassivate() {... }...
35 EJB Bean de Sessão Stateful Outro Exemplo (Bean) Métodos anotados com a podem ser chamados pelo cliente para remover uma bean. Quando isso ocorre, o cliente abre mão da public void remove() { } Container remove a bean. contents = null;
36 EJB Gerenciamento de Beans de Sessão O gerenciamento das beans de sessão pelo container depende do tipo de bean. Stateless. Stateful. Beans stateless tipicamente utilizam esquema de pool. Container instancia várias inicialmente e guarda os objetos em um pool. A medida que novas requisições são feitas para seu serviço JNDI, container devolve instâncias disponíveis no pool. Se o número de acessos simultâneos cresce, container pode acrescentar mais instâncias ao pool. Container também tem liberdade para decidir se pode/deve descartar instâncias.
37 EJB Gerenciamento de Beans de Sessão (II) Beans Stateful tem gerenciamento diferente. Estão associadas aos clientes que a criaram. Por isso, são tipicamente criadas sob demanda. Mas o container pode manter um pool de instâncias também. Instâncias semi-prontas. Container só chama o método ejbcreate() (se houver), quando o cliente solicita a criação. De toda forma, container não pode simplesmente remover uma instância de uma bean stateful. Instância deve permanecer criada e associada a um cliente até que ela expire ou que o cliente chame o método remove().
38 EJB Gerenciamento de Beans de Sessão (III) Beans Stateful também podem ser colocadas em memória secundária (Passivate) e trazidas de volta (Activate). Operações realizadas pelo container caso haja necessidade de liberar recursos (como memória). Quando uma bean é colocada em memória secundária, o container necessariamente chama o método ejbpassivate() da bean imediatamente antes. Ou o método anotado com a se houver. Método deve liberar recursos não-serializáveis da bean.
39 EJB Gerenciamento de Beans de Sessão (IV) Beans Stateless não são colocadas em memória secundária (e, por consequência, não são re-ativadas). Logo, não necessitam dos métodos ejbpassivate ou ejbactivate. Ou versões anotadas. O motivo é simples: Como elas não guardam estado e instâncias são intercambiáveis, container pode simplesmente destruir instâncias e criar novas quando necessário.
40 EJB Suporte Transacional Um dos serviços fornecidos pelos containers EJB é o suporte a transações. Em geral, este suporte não é relevante às beans de sessão. Elas normalmente não representam dados persistentes compartilhados. E, no caso das beans stateful, só podem ser acessadas por um cliente por vez. Mas algumas vezes, beans de sessão stateful são utilizadas para intermediar o acesso a bases de dados remotas. Neste caso, é importante saber quando começa e termina uma transação. Clientes podem fazer diveras operações e quererem, ao final, dar um roll-back. Ou simplesmente um commit.
41 EJB Suporte Transacional (II) Por isso, a API do EJB dá suporte a operações transacionais nas beans de sessão stateful. Para ter este suporte, a bean deve implementar a interface javax.ejb.sessionsynchronization. Ao realizar a implementação desta interface, a bean sinaliza ao container que quer ser avisada dos eventos de início e fim de uma transação. A interface requer implementação de 3 métodos: afterbegin(): chamado logo após o início de uma transação. Permite ao bean alocar recursos para atender à transação. beforecompletion(): Permite ao bean desalocar recursos. aftercompletion(boolean): determina se deve ser feito um commit ou um roll-back da operação.
Stateful Session Beans
J530 - Enterprise JavaBeans Stateful Session Beans Helder da Rocha ([email protected]) argonavis.com.br 1 Stateful Session Beans Quando um cliente chama um método de um bean, ele está iniciando um diálogo
Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse
Como criar um EJB Criando um projeto EJB com um cliente WEB no Eclipse Gabriel Novais Amorim Abril/2014 Este tutorial apresenta o passo a passo para se criar um projeto EJB no Eclipse com um cliente web
Enterprise Java Beans
Enterprise Java Beans Prof. Pasteur Ottoni de Miranda Junior DCC PUC Minas Disponível em www.pasteurjr.blogspot.com 1-O que é um Enterprise Java Bean? O Entertprise Java Bean (EJB) é um componente server-side
EJB. Session Beans. J2EE (C. Geyer) Introdução a SessionBean 1
EJB Session Beans J2EE (C. Geyer) Introdução a SessionBean 1 Autores! Autores " Cláudio Geyer " Eduardo Studzinski Estima de Castro (EJB 3.0) " Gisele Pinheiro Souza (EJB 3.0) J2EE (C. Geyer) Introdução
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 [email protected] Aula 6 EJB Enterprise Java
PadrãoIX. Módulo II JAVA. Marcio de Carvalho Victorino. Servlets A,L,F,M
JAVA Marcio de Carvalho Victorino 1 Servlets 2 1 Plataforma WEB Baseada em HTTP (RFC 2068): Protocolo simples de transferência de arquivos Sem estado (não mantém sessão aberta) Funcionamento (simplificado):
J2EE. J2EE - Surgimento
J2EE Java 2 Enterprise Edition Objetivo: Definir uma plataforma padrão para aplicações distribuídas Simplificar o desenvolvimento de um modelo de aplicações baseadas em componentes J2EE - Surgimento Início:
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
Programação Orientada a Objetos e Java - Introdução. Carlos Lopes
Programação Orientada a Objetos e Java - Introdução Carlos Lopes POO e Java Objetivo: proporcionar uma visão dos conceitos de POO e do seu uso na estruturação dos programas em Java. Classes e objetos em
Sistemas Distribuídos e Tolerância a Falhas Mestrado em Engenharia Informática 1ª ano / 2ª semestre
Sistemas Distribuídos e Tolerância a Falhas Mestrado em Engenharia Informática 1ª ano / 2ª semestre Prática: 1 - A plataforma JEE (Java Enterprise Edition) UBI, DI, Paula Prata SDTF T01 1 Arquitectura
UML: Diagrama de Casos de Uso, Diagrama de Classes
UML: Diagrama de Casos de Uso, Diagrama de Classes Diagrama de Casos de Uso O modelo de casos de uso visa responder a pergunta: Que usos (funcionalidades) o sistema terá? ou Para que aplicações o sistema
Enterprise Java Bean. Enterprise JavaBeans
Enterprise Java Bean Introdução Elementos do Modelo Enterprise JavaBeans A especificação do Enterprise JavaBeansTM (EJB) define uma arquitetura para o desenvolvimento de componentes de software distribuídos
Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery
Linguagem de Programação JAVA Técnico em Informática Professora Michelle Nery Agenda Regras paravariáveis Identificadores Válidos Convenção de Nomenclatura Palavras-chaves em Java Tipos de Variáveis em
Prova Específica Cargo Desenvolvimento
UNIVERSIDADE FEDERAL DO PIAUÍ Centro de Educação Aberta e a Distância CEAD/UFPI Rua Olavo Bilac 1148 - Centro CEP 64.280-001 Teresina PI Brasil Fones (86) 3215-4101/ 3221-6227 ; Internet: www.uapi.edu.br
Introdução a Java. Hélder Nunes
Introdução a Java Hélder Nunes 2 Exercício de Fixação Os 4 elementos básicos da OO são os objetos, as classes, os atributos e os métodos. A orientação a objetos consiste em considerar os sistemas computacionais
Resolução da lista de exercícios de casos de uso
Resolução da lista de exercícios de casos de uso 1. Explique quando são criados e utilizados os diagramas de casos de uso no processo de desenvolvimento incremental e iterativo. Na fase de concepção se
Implementando uma Classe e Criando Objetos a partir dela
Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 04 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 2 Prof. Cristóvão Cunha Implementando uma Classe
Exercícios de Revisão Java Básico
Exercícios de Revisão Java Básico (i) Programação básica (estruturada) 1) Faça um programa para calcular o valor das seguintes expressões: S 1 = 1 1 3 2 5 3 7 99... 4 50 S 2 = 21 50 22 49 23 48...250 1
Orientação a Objetos
1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou
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 [email protected] Aula 10 Persistência de Dados
Entity Beans. Introdução Entity Beans BMP
Entity Beans Introdução Entity Beans BMP Agenda Conceitos básicos de persistência Definição de entity beans Recursos Conceitos de programação Típos de entity beans Exemplos de entity beans usando Bean-
Java para Desenvolvimento Web
Java para Desenvolvimento Web Servlets A tecnologia Servlet foi introduzida pela Sun Microsystems em 1996, aprimorando e estendendo a funcionalidade e capacidade de servidores Web. Servlets é uma API para
Argo Navis J931 - Padrões de Design J2EE. Introdução. Objetivos de aprender padrões J2EE. Conhecer padrões para uso na plataforma J2EE
Padrões de Projeto J2EE J931 Introdução Helder da Rocha ([email protected]) argonavis.com.br Objetivos de aprender padrões J2EE Conhecer padrões para uso na plataforma J2EE Padrões permitem maior reuso, menos
Enterprise JavaBeans. Java Deployment Course. por Jorge H. C. Fernandes ([email protected]) DI-UFPE Julho de 1999
Enterprise JavaBeans Java Deployment Course por Jorge H. C. Fernandes ([email protected]) DI-UFPE Julho de 1999 Enterprise JavaBeans Java Deployment Course Copyright 1999 by Jorge H. C. Fernandes ([email protected])
Arquitetura JEE Introdução à Camada de Negócios: Enterprise Java Beans (EJB) Marcos Kalinowski ([email protected])
Arquitetura JEE Introdução à Camada de Negócios: Enterprise Java Beans (EJB) ([email protected]) Agenda Arquiteturas Web em Java (Relembrando) Arquitetura Java EE Introdução a Enterprise Java Beans
Linguagem de Programação III
Linguagem de Programação III Aula-3 Criando Classes em Java Prof. Esbel Tomás Valero Orellana Da Aula Anterior Classes em Java, sintaxe básica Tipos básicos de dados em Java, como escolher o tipo apropriado
TDC2012. EJB simples e descomplicado, na prática. Slide 1
TDC2012 EJB simples e descomplicado, na prática Slide 1 Palestrantes Kleber Xavier Arquiteto Senior / Globalcode [email protected] Vinicius Senger Arquiteto Senior / Globalcode [email protected]
Capítulo 8. Introdução UML
Capítulo 8. Introdução UML 1/42 Índice Indice 8.1 - Introdução UML 8.2 - Modelação estrutural 8.2.1 - Representação de classes e objectos 8.2.2 - Relações entre objectos 8.2-3 - Relações de associação
Sistemas Operacionais. Curso Técnico Integrado Profa: Michelle Nery
Sistemas Operacionais Curso Técnico Integrado Profa: Michelle Nery Conteúdo Programático CONTAS DE E GRUPOS DE O Microsoft Management Console - MMC Permissões de Segurança de um Console Contas de Usuários
Fundamentos da Plataforma Java EE. Prof. Fellipe Aleixo ([email protected])
Fundamentos da Plataforma Java EE Prof. Fellipe Aleixo ([email protected]) Como a plataforma Java EE trata o SERVIÇO DE NOMES Serviço de Nomes Num sistema distribuído os componentes necessitam
Notas da Aula 6 - Fundamentos de Sistemas Operacionais
1. Monitores Notas da Aula 6 - Fundamentos de Sistemas Operacionais Embora os semáforos sejam uma boa solução para o problema da exclusão mútua, sua utilização não é trivial. O programador é obrigado a
Programação Web. Professor: Diego Oliveira. Conteúdo 02: JSP e Servlets
Programação Web Professor: Diego Oliveira Conteúdo 02: JSP e Servlets JSP JSP é um template de uma página Web que usa Java para gerar HTML dinamicamente JSP é considerado server-side e roda em um objeto
Introdução à Programação. Armazenamento de Grande Quantidade de Informação Usando Vetores
Introdução à Programação Armazenamento de Grande Quantidade de Informação Usando Vetores Armazenando Grande Quantidade de Informação Como armazenar tanta informação? Vetores! 2 Tópicos da Aula Hoje, aprenderemos
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
Módulo 02 Programação Orientada a Objetos. Última atualização: 07/06/2010
Módulo 02 Programação Orientada a Objetos Última atualização: 07/06/2010 1 Objetivos Definir conceitos de orientação a objetos: o abstração, encapsulamento, pacotes. Discutir reutilização de código em
Sessões. Cookies HTTP Sessões Atributos de sessão
Sessões Cookies HTTP Sessões Atributos de sessão O problema O protocolo HTTP não mantém estado entre transações distintas Ao término do atendimento da requisição, a conexão TCP é fechada pelo servidor
Programação de Computadores - I. Profª Beatriz Profº Israel
Programação de Computadores - I Profª Beatriz Profº Israel As 52 Palavras Reservadas O que são palavras reservadas São palavras que já existem na linguagem Java, e tem sua função já definida. NÃO podem
5 - Vetores e Matrizes Linguagem C CAPÍTULO 5 VETORES E MATRIZES
CAPÍTULO 5 5 VETORES E MATRIZES 5.1 Vetores Um vetor armazena uma determinada quantidade de dados de mesmo tipo. Vamos supor o problema de encontrar a média de idade de 4 pessoas. O programa poderia ser:
Análise e Projeto Orientados por Objetos
Análise e Projeto Orientados por Objetos Aula 01 Orientação a Objetos Edirlei Soares de Lima Paradigmas de Programação Um paradigma de programação consiste na filosofia adotada na
Prof. Fellipe Araújo Aleixo [email protected]
Prof. Fellipe Araújo Aleixo [email protected] A arquitetura Enterprise JavaBeans é uma arquitetura de componentes para o desenvolvimento e a implantação de aplicativos de negócio distribuídos
PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES. Prof. Angelo Augusto Frozza, M.Sc. [email protected]
PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES Prof. Angelo Augusto Frozza, M.Sc. [email protected] ROTEIRO 5. Tratamento de Exceções Introdução e conceitos Capturando exceção usando
Sistemas Distribuídos: Conceitos e Projeto Java RMI
Sistemas Distribuídos: Conceitos e Projeto Java RMI Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática / UFMA http://www.lsd.deinf.ufma.br 19 de agosto
MANUAL DA SECRETARIA
MANUAL DA SECRETARIA Conteúdo Tela de acesso... 2 Liberação de acesso ao sistema... 3 Funcionários... 3 Secretaria... 5 Tutores... 7 Autores... 8 Configuração dos cursos da Instituição de Ensino... 9 Novo
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
Aplicações Distribuídas Cliente/ Servidor Corporativas
Aplicações Distribuídas Cliente/ Servidor Corporativas Introdução Desenvolver e distribuir Servlets e aplicativos EJB. Desenvolver e distribuir aplicativos Enterprise JavaBeans (EJB). Introdução Simples
EJB 3.1: A Community Update
EJB 3.1: A Community Update Reza Rahman Autor, EJB 3 in Action Expert Group Member, Java EE 6 and EJB 3.1 Fundador, Cognicellence Julho de 2008 1 EJB 3.0: Revisão Breve > As grandes mudanças > EJB simplificado
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,
Aula 2. Objetivos. Encapsulamento na linguagem Java; Utilizando a referência this.
Aula 2 Objetivos Encapsulamento na linguagem Java; Utilizando a referência this. Encapsulamento, data hiding é um conceito bastante importante em orientação a objetos. É utilizado para restringir o acesso
Documentação Usando o Javadoc
Documentação Usando o Javadoc Prof. MSc. João Carlos Pinheiro [email protected] Versão 2.1 Última Atualização: 04/2005 1 Comentários e Documentação Comentários em Java Existem três tipos de comentários
Introdução a JavaServer Pages. Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Desenvolvimento de sistemas web
Introdução a JavaServer Pages Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Desenvolvimento de sistemas web JavaServer Pages Problemas com Servlets: É improdutivo para gerar todo o conteúdo
ATRIBUTOS PRIVADOS 6. ENCAPSULAMENTO MÉTODOS PRIVADOS MÉTODOS PRIVADOS
ATRIBUTOS PRIVADOS Podemos usar o modificador private, para tornar um atributo privado, obtendo um controle centralizado Definimos métodos para implementar todas as lógicas que utilizam ou modificam o
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
Programação Na Web. Servlets: Como usar as Servlets. Agenda. Template genérico para criar Servlets Servlet 2.4 API
Programação Na Web Servlets: Como usar as Servlets 1 António Gonçalves Agenda Template genérico para criar Servlets Servlet 2.4 API Exemplo: Hello World Output: Texto, HTML e hora local. Compilar uma Servlets
Mini-curso Gratuito Globalcode Slide 1
Mini-curso Gratuito Slide 1 Mini-curso Gratuito Introdução Enterprise Java Beans (EJB) 3.0 Slide 2 Agenda Plataforma Java EE Conceitos Iniciais (EJB) Session Bean Message-Driven Bean (MDB) Java Persistence
Desenvolvimento OO com Java Orientação a objetos básica
Desenvolvimento OO com Java Orientação a objetos básica Vítor E. Silva Souza ([email protected]) http://www.inf.ufes.br/~vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal
ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE
ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE Fabiana Gomes Marinho Faculdade Lourenço Filho Resumo: Na UML, a modelagem conceitual dos dados é descrita pelo diagrama de classes, que através
Introdução a POO. Introdução a Linguagem C++ e POO
Introdução a POO Marcio Santi Linguagem C++ Introdução a Linguagem C++ e POO Programação Orientada a Objetos (POO) e C++ Recursos C++ não relacionados às classes Incompatibilidades entre C e C++ Classes
J530 - Enterprise JavaBeans. Introdução a EJB e Stateless. Session Beans. argonavis.com.br. Helder da Rocha ([email protected])
J530 - Enterprise JavaBeans Introdução a EJB e Stateless Session Beans Helder da Rocha ([email protected]) argonavis.com.br 1 Componentes de um EJB Para que o container possa gerar o código necessário é preciso
SISTEMA BRENA DE AUTOMAÇÃO COMERCIAL
SISTEMA BRENA DE AUTOMAÇÃO COMERCIAL VERSÃO 359 U N I P A C K NOTA FISCAL ELETRÔNICA CONTENDO ITENS COM CFOP S DISTINTOS RIO DE JANEIRO 25 DE JULHO DE 2013 SUMÁRIO 1- INTRODUÇÃO... 03 2- MOTIVAÇÃO... 03
GBD PROF. ANDREZA S. AREÃO
GBD PROF. ANDREZA S. AREÃO Dado, Informação e Conhecimento DADO: Estímulos captados pelos sentidos humanos; Símbolos gráficos ou sonoros; Ocorrências registradas (em memória, papel, etc.); Indica uma situação
Computação II - Java Prof. Adriano Joaquim de Oliveira Cruz Aula Prática - Herança, Polimorfismo e Construtores
Computação II - Java Prof. Adriano Joaquim de Oliveira Cruz Aula Prática - Herança, Polimorfismo e Construtores 1 Exercícios Exercício 1: Construtores e Testes Analise a classe Conta.java, mostrada na
INTRODUÇÃO À TECNOLOGIA SERVLETS
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB INTRODUÇÃO À TECNOLOGIA SERVLETS Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o conceito aplicações orientada a serviços via web Apresentar o papel dos contentores
AGENDAMENTO PARA IMPORTAÇÃO DE NOTAS FISCAIS 1. PARÂMETROS DO ESTABELECIMENTO... 2 2. CONFIGURAÇÃO DO AGENDADOR... 3
AGENDAMENTO PARA IMPORTAÇÃO DE NOTAS FISCAIS SUMÁRIO 1. PARÂMETROS DO ESTABELECIMENTO... 2 2. CONFIGURAÇÃO DO AGENDADOR... 3 3. CONFIGURAÇÕES PARA IMPORTAÇÃO DE NOTAS PARA USUÁRIOS NET... 7 4. PROCEDIMENTOS
Trabalho 3: Agenda de Tarefas
INF 1620 Estruturas de Dados Semestre 08.2 Trabalho 3: Agenda de Tarefas O objetivo deste trabalho é a implementação de um conjunto de funções para a manipulação de uma agenda de tarefas diárias, de forma
Introdução à Programação. Interface, Polimorfismo e Dynamic Binding
Introdução à Programação Interface, Polimorfismo e Dynamic Binding Interface Programador Java PLENO Possuir sólida experiência em programação Desenvolvimento na linguagem JAVA Webservice, Struts ou JSF(desejável)
Agendador de Rotinas
Agendador de Rotinas Agendamento para Importação de Notas Fiscais É possível parametrizar o agendamento para importação de notas fiscais de entrada, saída e conhecimento de transporte, para todas as empresas
JSF e PrimeFaces. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul
JSF e PrimeFaces Professor: Ricardo Luis dos Santos IFSUL 2015 Agenda Introdução Desenvolvimento Web Java Server Faces Exercício 2 Introdução Ao longo dos anos diversas linguagens de programação foram
Serviço de Transação. Transação - Conceitos
Serviço de Transação Conceitos Tipos de Gerência de Transação JTA Transação - Conceitos Garantir as propriedades ACID Atomicidade Consistencia Isolamento Durabilidade Transações no modelo EJB Dois Tipos
9 Comandos condicionais
9 Comandos condicionais Um comando condicional é uma instrução empregada quando se deseja criar um desvio, isto é, a opção de executar-se ou não um determinado trecho de código, segundo uma condição. Em
Paradigmas da Programação PPROG. Linguagem JAVA. Interfaces. (Livro Big Java, Late Objects Capítulo 9) Nelson Freire (ISEP DEI-PPROG 2013/14) 1/33
PPROG Paradigmas da Programação Linguagem JAVA Interfaces (Livro Big Java, Late Objects Capítulo 9) Nelson Freire (ISEP DEI-PPROG 2013/14) 1/33 PPROG Motivação para usar Interfaces Definição de Interface
Programação Orientada a Objetos. Prof. Diemesleno Souza Carvalho [email protected] http://www.diemesleno.com.br
Programação Orientada a Objetos Prof. Diemesleno Souza Carvalho [email protected] http://www.diemesleno.com.br Programação Orientada a Objetos Na aula passada, vimos: Encapsulamento Programação Orientada
Programação Orientada a Objetos: Lista de exercícios #1. Bruno Góis Mateus
Programação Orientada a Objetos: Lista de exercícios #1 Bruno Góis Mateus 1 Contents Programação Orientada a Objetos (Bruno Góis Mateus ): Lista de exercícios #1 Classes e Instanciação 3 A classe Circle...............................................
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS
PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Tratamento de Eventos Professor: Danilo Giacobo OBJETIVOS DA AULA Apresentar os modelos mais comuns de tratamento de eventos da plataforma Android. Aprender a utilizar
Programação Estruturada. Programação Estruturada. Idéias Básicas da Programação Estruturada
Programação Estruturada Programação Estruturada Paradigmas de Linguagens de Programação As linguagens desse paradigma são muitas vezes chamadas de linguagens convencionais, procedurais ou imperativas.
Tópicos Avançados em Banco de Dados Gerenciamento de Transações em Banco de Dados. Prof. Hugo Souza
Tópicos Avançados em Banco de Dados Gerenciamento de Transações em Banco de Dados Prof. Hugo Souza Até agora vimos como é formada a infraestrutura física e lógica das bases de dados com os principais componentes
JavaServer Faces. Parte 2
JavaServer Faces Parte 2 Recapitulando Aplicações web são aplicações que executam em um servidor Recebem requisições de usuários Retornam respostas ao usuário Browsers só entendem e exibem html O servidor
2 Ferramentas Utilizadas
2 Ferramentas Utilizadas Esta dissertação utiliza vários outros trabalhos para implementar os mecanismos de adaptação abordados. Essas ferramentas são descritas nas seções seguintes. 2.1 Lua Lua [7, 8]
Aplicação da Arquitetura Multicamadas Utilizando Java. Raquel Schlickmann Orientador: Marcel Hugo
Aplicação da Arquitetura Multicamadas Utilizando Java Raquel Schlickmann Orientador: Marcel Hugo Roteiro Introdução Histórico da Arquitetura de Software Enterprise JavaBeans - EJB Voyager Implementação
Aula de JavaScript 05/03/10
Objetos Sabe-se que variável são contêiners que podem armazenar um número, uma string de texto ou outro valor. O JavaScript também suporta objetos. Objetos são contêiners que podem armazenar dados e inclusive
Computação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Introdução Esse não é um curso de Java! O objetivo é aprender os conceitos da programação orientada a objetos,
EJB ainda tem vez no Java EE 6? Fernando Lozano Consultor 4Linux [email protected]
EJB ainda tem vez no Java EE 6? Fernando Lozano Consultor 4Linux [email protected] Você Gosta do EJB? O EJB esteve por muito tempo na berlinda do mundo Java É pesado... É complicado... Código muito
Metadados. 1. Introdução. 2. O que são Metadados? 3. O Valor dos Metadados
1. Introdução O governo é um dos maiores detentores de recursos da informação. Consequentemente, tem sido o responsável por assegurar que tais recursos estejam agregando valor para os cidadãos, as empresas,
2. O gerador de código estende DepthFirstAdapter implementando a interpretação que gerará código Jasmin a partir de Smallpascal.
Geração de Código para Smallpascal a 1. Já estudamos como SableCC faz uso do design pattern visitor para construir compiladores modulares. Vimos também os principais componentes da máquina virtual Java
Algoritmos e Programação II. Sobrecarga
Algoritmos e Programação II Baseado no Material do Prof. Júlio Machado Sobrecarga Em várias linguagens é comum encontrarmos rotinas que fazem basicamente a mesma coisa, porém, têm nomes distintos porque
INTRODUÇÃO À LINGUAGEM C++
INTRODUÇÃO À LINGUAGEM C++ 1 - VARIÁVEIS Variáveis espaço de memória reservado para armazenar tipos de dados, com um nome para referenciar seu conteúdo. Observações importantes Todas as variáveis devem
MODELAGEM VISUAL DE OBJETOS COM UML DIAGRAMA DE CLASSES. [email protected]
MODELAGEM VISUAL DE OBJETOS COM UML DIAGRAMA DE CLASSES [email protected] Externamente ao sistema, os atores visualizam resultados de cálculos, relatórios produzidos, confirmações de requisições solicitadas,
Programação Orientada a Objetos Herança Técnico em Informática. Prof. Marcos André Pisching, M.Sc.
Herança Técnico em Informática, M.Sc. Herança 2 Herança Reutilização de código Exemplo Banco: Um banco oferece diversos serviços que podem ser contratados individualmente pelos clientes. Quando um serviço
Unidade Acadêmica: Faculdade de Computação FACOM Disciplina: Programação Orientada a Objetos I Professor: Fabiano Azevedo Dorça Prática 01
Unidade Acadêmica: Faculdade de Computação FACOM Disciplina: Programação Orientada a Objetos I Professor: Fabiano Azevedo Dorça Prática 01 Objetivos: Modelar um sistema orientado a objetos simples a partir
SCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello [email protected]
SCE-557 Técnicas de Programação para WEB Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello [email protected] 1 Cronograma Fundamentos sobre servidores e clientes Linguagens Server e Client side
