UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE INFORMÁTICA ESPECIALIZAÇÃO EM TECNOLOGIA JAVA ALESSANDER FECCHIO

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

Download "UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE INFORMÁTICA ESPECIALIZAÇÃO EM TECNOLOGIA JAVA ALESSANDER FECCHIO"

Transcrição

1 UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE INFORMÁTICA ESPECIALIZAÇÃO EM TECNOLOGIA JAVA ALESSANDER FECCHIO JAVA EE 5: DESENVOLVENDO APLICAÇÕES CORPORATIVAS CURITIBA 2006

2 UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE INFORMÁTICA ESPECIALIZAÇÃO EM TECNOLOGIA JAVA ALESSANDER FECCHIO JAVA EE 5: DESENVOLVENDO APLICAÇÕES CORPORATIVAS Trabalho apresentado como requisito para a obtenção de título de especialista em tecnologia Java, da Universidade Tecnológica Federal do Paraná. Orientadora: Prof. Ana Cristina B. Kochem Vendramin. CURITIBA 2006

3 SUMÁRIO 1 Introdução O Java Uma breve história do Java Nomenclatura e versionamento do Java Conceitos fundamentais da estrutura da plataforma Java Java é uma linguagem interpretada Edições do Java Visão geral do Java EE Modelo de desenvolvimento do Java EE Componentes Java EE Clientes Java EE Componentes web Componentes de negócios Outros componentes Containers Java EE Tecnologias empregadas Ambiente de desenvolvimento integrado Utilização de recursos do sistema Aproveitamento do código já desenvolvido Adequação do IDE ao tipo de aplicação a ser desenvolvida Controle de versões Servidor de aplicações MVC Banco de dados MySql PostgreSQL Derby Uma Aplicação prática da tecnologia Java EE Ambiente de desenvolvimento Pré-requisitos Instalação dos software Integração do NetBeans com o SJSAS Criação do banco de dados Conceitos sobre acesso a bancos de dados no Java Configuração do SJSAS Enterprise Java Beans Beans Session beans Statefull beans Stateless beans Interfaces Anotações Container para aplicações cliente Java Web Start Contexto Tipos de arquivo Persistência de dados Facades Uma aplicação simples Session bean Interfaces Aplicação cliente Construção da aplicação com o NetBeans Criação de um projeto Criação do bean Programação do bean e das interfaces Programação da aplicação cliente...58

4 7.4.5 Deploy da aplicação Execução do cliente Prova de Conceito - uma aplicação completa Projeto Diagrama de casos de uso Diagrama de seqüência Arquivos de configuração Módulo EJB Criação dos entity beans Entidade Entidades para chaves primárias Criação dos session beans Persistência Interfaces Completando a aplicação EJB Acesso aos EJB num cliente desktop Listagem Inclusão Pesquisa Atualização Exclusão Criação de usuários Acesso ao EJB numa aplicação web Documentação Conclusão...87 Referências...89 Apêndice A - Script para criação das tabelas no banco de dados...91 Apêndice B - Módulo EJB...93 Apêndice C - Módulo cliente desktop Apêndice D - Módulo aplicativo web...119

5 LISTA DE FIGURAS Figura 1: O aparelho Star 7 [JAVA NET]...9 Figura 2: Versões de Duke - o mascote Java [JAVA NET]...10 Figura 3: Esquema básico de programação, compilação e execução de um programa...15 Figura 4: Edições do Java e suas máquinas virtuais...16 Figura 5: Diagrama das camadas do Java EE...18 Figura 6: Tipos de container do Java EE 5 [BALL 2006]...21 Figura 7: Inicialização do SJSAS a partir do NetBeans...32 Figura 8: Mensagem de inicialização do Java DB...33 Figura 9: Mensagem de inicialização do SJSAS...33 Figura 10: Mensagem indicando que o SJSAS foi iniciado...33 Figura 11: Tela principal do ASADMIN...34 Figura 12: Menu para iniciar e parar o Java DB...35 Figura 13: Mensagem de início do Java DB...35 Figura 14: Configurações do banco de dados Maxigroupware...35 Figura 15: Nova conexão criada...36 Figura 16: Componentes disponíveis na conexão com o banco de dados...36 Figura 17: Mensagens de criação das tabelas...37 Figura 18: Step 1 of 2 - Criação do pool de conexões...41 Figura 19: Step 2 of 2 - Propriedades do pool de conexões...41 Figura 20: Novo pool criado...42 Figura 21: Criação de um recurso JDBC...42 Figura 22: Recurso JDBC criado...43 Figura 23: Alteração da porta padrão do container web...45 Figura 24: Acesso de um bean por um cliente remoto...48 Figura 25: Criação de uma aplicação Enterprise no NetBeans...56 Figura 26: Módulos criados pelo assistente Enterprise Application...57 Figura 27: Criação de um session bean no NetBeans...57 Figura 28: Programas criados pelo assistente de session beans...58 Figura 29: Atualização das interfaces...58 Figura 30: Criação de uma classe Java simples...59 Figura 31: Criação de uma nova classe Java...59 Figura 32: Nova classe criada...60 Figura 33: Diagrama de casos de uso...63 Figura 34: Diagrama de seqüência...63 Figura 35: Arquivos de configuração da aplicação enterprise...64 Figura 36: Criação de entidades a partir do banco de dados...65 Figura 37: Escolha do datasource e das tabelas para criação das entidades...66 Figura 38: Nomenclatura e empacotamento das entidades...67 Figura 39: Criação da persistence unit...67 Figura 40: Entidade criadas no projeto...68 Figura 41: Entidades criadas no projeto...69 Figura 42: Criação de session beans...72 Figura 43: Assistente para criação de session beans...73 Figura 44: Empacotamento e escolha das interfaces a serem criadas...73 Figura 45: Session bean e interface criados...74 Figura 46: Regras de navegação da aplicação web...81 Figura 47: Acesso à ferramenta AutoComment...84 Figura 48: Ferramenta AutoComment...84 Figura 49: Geração da documentação...85 Figura 50: Mensagem de sucesso ao gerar a documentação...85 Figura 51: Página inicial da documentação...86

6 LISTA DE SIGLAS API Application Programming Interface CRUD Create, Recover, Update, Delete CVS Concurrent Version System DBCP Database Connection Pool EAR Enterprise Archive EJB Enterprise Java Beans GCS Gerência de Configuração de Software GPL General Public License GUI Graphic User Interface HTML Hyper Text Meta Language IDE Integrated Development Environment J2EE Java 2 Enterprise Edition J2ME Java 2 Micro Edition J2SE Java 2 Standard Edition JAR Java Archive Java EE 5 Java Enterprise Edition 5 JCE Java Cryptography Extension JDBC Java Database Connectivity JDK Java Development Kit JFC Java Foundation Classes JMS Java Message Service JNDI Java Naming and Directory JPA Java Persistence API JSF Java Server Faces JSP Anúncio da tecnologia Java Server Pages JVM Java Virtual Machine JWS Java Web Start LCD Liquid Crystal Display MVC Model-View-Controller PCMCIA Personal Computer Memory Card International Association PDA Personal Digital Assistant SJSAS Sun Java System Application Server UML Unified Modeling Language WAR Web Archive WSDP Java Web Services Developer Pack

7 RESUMO O desenvolvimento de aplicações corporativas utilizando a versão enterprise do Java sempre foi considerada de grande complexidade, entre outros motivos pela grande quantidade e pela extensão de seus arquivos de configuração. Uma vez que a especificação Java deixa em aberto a possibilidade de cada fornecedor implementar suas próprias características aos servidores de aplicação, os arquivos de configuração acabam por não seguir um padrão. A versão enterprise do Java, chamada de Java EE 5, tem por objetivo simplificar o desenvolvimento de aplicações e abstrair os desenvolvedores da complexa configuração dos servidores. O objetivo deste trabalho é demonstrar a utilização da tecnologia Java EE 5 para o desenvolvimento de aplicações corporativas. O documento inclui demonstrações de uso dos principais tópicos relacionados à tecnologia, como persistência de dados, EJB, aplicações cliente desktop e web, bem como a utilização de servidores de aplicação Java. Com isto, espera-se desmitificar a idéia de que o desenvolvimento em Java EE 5 é uma tarefa árdua mesmo para desenvolvedores experientes. Palavras-chave: Java, EJB, enterprise, persistência de dados, servidor de aplicações.

8 8 1 INTRODUÇÃO O Java é considerado como um dos maiores fenômenos da informática em todos os tempos, pela velocidade com que novos recursos são criados e disponibilizados para a comunidade de desenvolvedores e usuários. Nascida inicialmente como uma linguagem de programação para atender a um nicho de mercado, o Java hoje é utilizado em aplicativos de todos os tipos, e também embarcado em milhares de aparelhos ao redor do mundo. É possível encontrá-lo em pequenos aplicativos ou utilitários, complexos sistemas corporativos, ou em processadores de computadores de bordo de automóveis, por causa de sua fantástica flexibilidade. Esta flexibilidade peculiar à linguagem fez com que ela se desenvolvesse muito rapidamente, gerando outras tecnologias dela dependentes, como por exemplo os servidores de aplicação. Se por um lado esta gama de tecnologias ajudou a resolver problemas dos mais diversos, por outro lado criou duas dificuldades aos profissionais de informática: a escolha da melhor tecnologia a ser adotada, e no caso de escolher mais de uma, como integrá-las da maneira mais eficaz. As questões inerentes à integração destes componentes não são fáceis de responder. Muitas empresas, pelos mais diversos motivos, optam por utilizar apenas uma tecnologia para desenvolver toda sua aplicação. Mas nem sempre isto é possível num cenário onde se desenvolvem aplicações que precisam ser executas em ambientes distintos, como web, estações de trabalho e dispositivos móveis. Tem-se então o problema da interoperabilidade. Apesar da padronização Java ser muito rígida, e de tecnologias específicas para um ambiente (como o desktop, também chamado de estação de trabalho) serem capazes de se comunicar com outras (como a internet), nem sempre a comunicação é simples. O objetivo deste trabalho é demonstrar como estas tecnologias podem ser integradas, fornecendo maneiras de criar um ambiente robusto, ágil e seguro para a disponibilização de aplicações corporativas.

9 9 2 O JAVA 2.1 UMA BREVE HISTÓRIA DO JAVA O ano era O local, um pequeno escritório localizado na rua Sand Hill Road, em Menlo Park. Lá, um grupo de treze pessoas liderado por James Gosling, Patrick Naughton e Mike Sheridan isolou-se da Sun Microsystems e trabalhou arduamente num projeto secreto conhecido apenas pelo codinome Green Project [JAVA]. O grupo, conhecido por Green Team, tinha a função de antecipar e planejar o que estava por vir na área da computação. Eles acreditavam que um ponto importante nesta evolução seria a convergência entre computadores e dispositivos pessoais comuns (como geladeiras, por exemplo). O resultado apareceu dezoito meses depois, na forma de um controlador de dispositivos (uma espécie de controle remoto), através do qual um usuário poderia controlar sua geladeira, sua torradeira, sua TV a cabo, e quaisquer dispositivos prontos para a tecnologia. Conforme ilustra a Figura 1, o aparelho desenvolvido, conhecido como *7 (Star 7), era uma handheld wireless, utilizando um processador SPARC, com tela Liquid Crystal Display (LCD) colorida de 5 polegadas touchscreen, rede de 900 MHz, Personal Computer Memory Card International Association (PCMCIA), codecs de áudio e vídeo. O aparelho tinha um novo gerenciamento de energia e, para controlar tudo isso, uma versão do UNIX era executada em menos de 1 MB de RAM inclusive os drivers [JAVA NET]. Figura 1: O aparelho Star 7 [JAVA NET]

10 10 Segundo os responsáveis pelo projeto, o Star 7 também possuía...a new small, safe, secure, distributed, robust, interpreted, garbage collected, multi-threaded, architecture neutral, high performance, dynamic programming language... [JAVA NET] Ou, numa tradução livre:...uma linguagem de programação pequena, segura, distribuída, robusta, interpretada, com memória auto-gerenciada, multi-threaded, de arquitetura neutra, de alto desempenho e dinâmica... Esta linguagem foi batizada de Oak (carvalho, em inglês) - uma árvore que James Gosling podia ver de sua janela, enquanto trabalhava. Um segundo produto nasceu daquela equipe: um cartoon, criado e desenhado por Joe Palrang, chamado Duke (ver Figura 2). Duke era o assistente utilizado para o Star 7, e sua função era ensinar o usuário a utilizar os recursos do equipamento. Com o fim do produto e o tempo passando, acabou se transformando no mundialmente mascote Java [JAVA NET]. Figura 2: Versões de Duke - o mascote Java [JAVA NET] O Star 7 carecia de um nicho de mercado onde poderia ser inserido. Inicialmente, a equipe pensou que uma boa idéia seria controlar vídeo sob demanda através da TV a cabo e para isso, chegou a construir um protótipo. O grande problema era que a indústria de TV a cabo não tinha como oferecer o que o Star 7 podia controlar. Nem mesmo infraestrutura existia e seria caríssimo para que apenas um grupo de empresas a construísse. Ironicamente, o vídeo sob demanda e o controle da televisão digital é hoje uma realidade no mundo, e tanto a Oak como o Star 7 estavam fadados ao desaparecimento. Entretanto, um fato viria a mudar este aparente fracasso para uma das mais estrondosas vitórias do mundo da informática: a internet. A rápida evolução da internet fez com que uma imensa infraestrutura de telecomunicações e transmissão de dados fosse disponibilizada, calcada inicialmente na malha de cabos e fios das empresas de telecomunicações. A infraestrutura que declarou o fim do Star 7, repentinamente fora criada.

11 11 James Gosling, foi novamente incumbido de um projeto, dessa vez de preparar a Oak para a internet. Em 1995, ele conclui seu trabalho, lançando uma nova versão do Oak, rebatizada de Java [WIRED]. Java foi inteiramente desenvolvida para atuar em ambientes heterogêneos, como o da internet. Assim, Java poderia ser executado diretamente nos browsers (navegadores de internet), na forma de applets 1. Os browsers, que antes eram limitados a um conteúdo estático, podiam agora exibir também conteúdo dinâmico. Isso fez com que o Java crescesse como nenhuma outra linguagem de programação cresceu na história da informática, rapidamente sendo alçado à categoria de plataforma [WIKIPEDIA 01]. Dez anos depois, não só a linguagem, mas toda a plataforma evoluiu muito, e alguns números bem interessantes podem mostrar este crescimento [JAVA 01]: 4 milhões de desenvolvedores ao redor do mundo; mais de 700 milhões de computadores; mais de 700 milhões de celulares e outros dispositivos; mais de 1 bilhão de smart cards; impressoras, web cams, jogos, sistemas de navegação de automóveis e muitos outros. Hoje, o Java pode ser encontrado na internet, em computadores, laptops e telefones celulares, e em equipamentos onde as pessoas nem imaginam, como geladeiras, fornos de microondas e cartões de crédito. A linha do tempo da Tabela 1 demonstra sua evolução. Ano Fato 1991 Lançamento do Green Project 1992 Lançamento da linguagem Oak, do Star7 e do Duke 1994 Lançamento do WebRunner, o primeiro navegador a suportar conteúdo dinâmico 1995 Nascimento do Java. Pai: James Gosling. Mãe: Sun Microsystems; Anúncio oficial na SunWorld Lançamento do Java Development Kit (JDK) 1.0; Primeira JavaOne (conferência de desenvolvedores); JavaBeans, Servlets e outras tecnologias anunciadas; Application Programming Interface (API) Java Card anunciada. 1 Um applet é um programa escrito em Java, embutido numa página web (dinâmica ou estática), que é executado na JVM da estação cliente.

12 12 Ano Fato 1997 Lançamento do JDK 1.1; Lançamento do Java Servlet Developers Kit; Anúncio da tecnologia Enterprise Java Beans (EJB); Inclusão da tecnologia Java Foundation Classes (JFC) na plataforma Java Anúncio das JFC/"Project Swing"; Visa lança o primeiro smart card com tecnologia Java Card; Lançamento do Java 2 para Linux; Lançamento da plataforma Java Liberação do código fonte da plataforma Java 2; Anúncio da tecnologia Java Server Pages (JSP); Divisão oficial da plataforma Java 3 edições: Java 2 Standard Edition (J2SE), Java 2 Enterprise Edition (J2EE), Java 2 Micro Edition (J2ME); Liberação da plataforma J2EE; Liberação da plataforma J2SE para Linux Liberação da plataforma J2SE 1.3; Liberação da plataforma J2SE 1.3 para Apple Mac OS X Liberação da Java Web Start Lançamento do JDK 1.4; Lançamento do Java Web Services Developer Pack (WSDP); Lançamento da J2EE 1.4 Beta Lançamento do Java Java 10º aniversário; Aproximadamente 4,5 milhões de desenvolvedores utilizam Java Lançamento do Java Enterprise Edition 5 (Java EE 5), nova versão do J2EE Tabela 1: Evolução da plataforma Java. [JAVA 02] 2.2 NOMENCLATURA E VERSIONAMENTO DO JAVA Como é possível notar na Tabela 1, com o lançamento da versão 5 do Java, houve uma grande mudança em sua nomenclatura, e a compreensão destes nomes e acrônimos torna-se necessária para o completo entendimento da estrutura do Java.

13 13 As edições do Java (discutidas na seção 2.3.2) foram lançadas em 1999, pouco tempo depois do lançamento do Java 2. O próprio nome Java 2 na realidade não se refere à versão 2 do Java, e sim à versão 1.2. Esta estranha alteração de nome foi feita como uma jogada de marketing, para mostrar que a linguagem havia sido radicalmente alterada, da sintaxe de alguns comandos até a estrutura interna da Java Virtual Machine (JVM). Assim, havia o JDK 1.2 e o JRE 1.2 que eram a base do Java 2. Esta diferença entre a versão do software e a versão da linguagem gerava muita confusão. Em 2004, o Java 5 foi lançado, e com ele o novo padrão de nomenclatura, desta vez bem simplificado. A comunidade pôde participar da definição da nomenclatura, e junto com o departamento de marketing da Sun, chegaram à conclusão que o melhor caminho para a simplificação seria simples: tirar o 2 e expandir o acrônimo. Não existe Java 3 e nem o Java 4. A versão passou diretamente da versão 2 para a 5. O motivo é simples: existe um número de versão utilizado internamente pela Sun e existe o nome comercial. A versão utilizada internamente pela Sun atualmente é a 1.5. Para sincronizar a versão interna com a versão comercial, optou-se por retirar a expressão "1." da versão comercial, gerando assim o Java 5. Oficialmente, a partir de junho de 2005, a nova nomenclatura foi adotada, sendo que de imediato, as seguintes alterações foram realizadas: J2SE 6.0 foi chamado de Java SE 6 e J2SE 7.0 será chamado de Java SE 7, quando lançado; J2EE 5.0 foi chamado de Java EE 5; J2ME foi chamado de Java ME, pois não tem um número de versão. Outro ponto importante do versionamento é que versões intermediárias do software não mais serão lançadas, somente serão disponibilizadas versões para correção de erros. Novos recursos e implementações serão sempre lançadas com as versões principais (Java 6, etc). 2.3 CONCEITOS FUNDAMENTAIS DA ESTRUTURA DA PLATAFORMA JAVA Para se entender a plataforma Java, é necessário primeiro conhecer sua estrutura. Por definição, plataforma é um ambiente de hardware ou software no qual um programa é executado [JAVA 03]. Java é uma plataforma apenas de software, sendo executada numa outra plataforma, composta de hardware e software (o sistema operacional, dependente do hardware onde é executado).

14 14 A plataforma Java é composta de duas partes: A JVM, responsável pela execução dos programas; A Java API, conjunto de classes responsáveis por prover os mais diversos recursos, como acessar bancos de dados Java é uma linguagem interpretada O Java segue a filosofia Write Once, Run Everywhere (Escreva uma vez, execute em todos os lugares). Um programa escrito em Java puro pode ser executado em todas as plataformas disponíveis, do desktop ao mainframe. Para que seja executado em todas as plataformas, o programa Java depende da JVM, ou seja, Java é uma linguagem interpretada. O diferencial para as linguagens interpretadas mais conhecidas (como o antigo BASIC), é que a VM não interpreta o programa original. Ao ser compilado, um programa Java gera um código intermediário, que não é um programa fonte, nem um executável. Este código intermediário chamado de byte code é que pode ser interpretado pela VM [JAVA 03]. Como a execução do byte code depende apenas da VM, qualquer sistema operacional que tenha uma VM pode executá-lo sem precisar ser reescrito. Por isto, Java é considerado multi plataforma. O processo pode ser melhor compreendido através da Figura 3.

15 15 Figura 3: Esquema básico de programação, compilação e execução de um programa O fato de ser interpretado, fez com que o Java fosse conhecido como uma linguagem lenta, de baixo desempenho. Atualmente, os avanços da informática e o empenho dos especialistas da Sun em otimizar este componente conseguiram tornar o Java quase tão rápido quanto o C++, embora essa afirmação seja fonte de muitas discussões em listas e fóruns na internet. Existem três tipos de VM: Java Card VM, utilizada em smart cards [JAVA CARD]; KVM, utilizada em dispositivos móveis como celulares e Personal Digital Assistant (PDA) [KVM]; JVM, utilizada em computadores e alguns tipos de dispositivos móveis [JVM]. Cada uma das VMs tem como base uma tecnologia diferenciada, formada por uma ou mais API. Por exemplo: a KVM utiliza a API para dispositivos móveis Edições do Java Uma edição do Java é uma versão da plataforma que contém os recursos necessários para atender um determinado segmento do mercado. Cada edição é formada por dois conjuntos de API. Um deles é chamada de core, sendo o conjunto de bibliotecas que deve ser suportada por todas as implementação compatíveis com a edição. O outro é opcional, sendo fornecido com a edição, e

16 pode ou não ser implementado por uma edição compatível. Opcionalmente, os pacotes adicionais podem se tornar parte do core, se houver demanda do mercado. 16 O objetivo é que as classes que pertencem ao core estejam disponíveis em todos os sistemas operacionais que possam executar o Java. Portanto, se um programa utiliza apenas as classes do core, ele é 100% portável, podendo ser executado em qualquer plataforma. Existem três edições do Java: Java ME: utilizada em dispositivos móveis, normalmente com pequeno poder de processamento, como celulares, PDAs e impressoras, entre outros. Oferece funcionalidades que vão desde criar interfaces simples até protocolos complexos de rede, passando por um robusto modelo de segurança [JAVA ME]; Java SE: utilizada para desenvolver e distribuir aplicativos em desktops e servidores. Com ela também é possível desenvolver software embarcado e para ambientes de real-time. Além disso, contém a base para o Java EE [JAVA SE]; Java EE: utilizada para o desenvolvimento de aplicações corporativas, de grande porte, executadas num servidor. É formada pelo Java SE e um conjunto de bibliotecas complementares, e provê serviços como web services, modelos de componentes, API para gerenciamento e mensagens, entre outros recursos. É a edição utilizada para o desenvolvimento deste trabalho [JAVA EE]. A Figura 4 demonstra as edições do Java, e a JVM utilizada por cada uma delas. Figura 4: Edições do Java e suas máquinas virtuais

17 17 3 VISÃO GERAL DO JAVA EE O Java EE é a edição mais abrangente do Java, pois engloba todas as tecnologias para desenvolvimento em ambientes de servidor e desktop. No desenvolvimento deste trabalho, é utilizado o Java EE 5, nova versão da plataforma corporativa do Java. O grande objetivo dessa versão é simplificar o desenvolvimento de aplicações corporativas, sem entretanto alterar os recursos disponíveis na versão 1.4. As principais alterações do Java EE 5 em relação a sua versão anterior são [JAVA EE]: Uso de annotations (anotações), que insere grande parte das configurações da aplicação dentro do próprio código; A versão 3.0 do EJB foi bastante simplificada; Java Server Faces (JSF), um poderoso framework que possibilita o uso de componentes similares aos de Graphic User Interface (GUI) em aplicações web; Tecnologia de web services simplificada; Java Persistence API, uma camada de persistência objeto-relacional que pode ser utilizada também fora do contexto Java EE MODELO DE DESENVOLVIMENTO DO JAVA EE O Java EE utiliza um modelo de múltiplas camadas para aplicações corporativas. Uma aplicação é dividida em componentes de acordo com sua função, e os componentes podem ser instalados em vários servidores, de acordo com a camada: Componentes da camada cliente são executados na estação cliente; Componentes da camada web são executados no servidor Java EE; Componentes da camada de negócios são executados no servidor Java EE; Componentes da camada de sistemas de informação (normalmente um banco de dados) são executados num servidor próprio. A Figura 5 mostra um diagrama das camadas do Java [BALL 2006].

18 18 Figura 5: Diagrama das camadas do Java EE 3.2 COMPONENTES JAVA EE Aplicações Java EE são formadas por componentes. Componentes são unidades de software funcionais e independentes, cujas classes e arquivos se comunicam com outros componentes. A especificação Java define três componentes [BALL 2006]: Clientes Java EE; Java Servlets e JSP, que são componentes web da aplicação; Enterprise Java Beans, que são componentes de negócios. Cada um destes componentes pode acessar qualquer tecnologia Java disponível no servidor Java EE (ou em um container, se for o caso). Uma descrição dos três componentes é apresentada a seguir Clientes Java EE tipos: Os clientes Java EE são executados na estação de trabalho, e são divididos em dois

19 19 Aplicações desktop, que podem ter uma GUI ou uma interface por linha de comando. Podem interagir com os componentes de negócio, acessando-os direta ou indiretamente (por meio de conexões HTTP); Um conjunto de navegador web e applet Componentes web Os componentes web são executados no servidor (que pode ser um servidor Java EE ou simplesmente um container JSP). Há dois tipos de componentes web: Java Servlets: classes que recebem uma requisição e a processam dinamicamente, gerando conteúdo HTML como saída; JSP: documentos texto plano, que são executados no servidor Componentes de negócios Os componentes de negócio são executados no servidor Java EE, e contêm as regras de negócio da aplicação. Entre outras funções, acessam bancos de dados, processam dados e os reenviam, para os clientes ou para o próprio banco de dados. São os Enterprise Java Beans Outros componentes Existe ainda um outro tipo de componente, chamado Java Bean, que não é considerado um componente Java EE. Normalmente eles são utilizados para controlar o fluxo de dados entre uma aplicação cliente e os componentes no servidor. Java Beans possuem propriedades e métodos get e set para acessá-los. Utilizados desta maneira, são fáceis de implementar, mas devem seguir a especificação Java quanto à nomenclatura utilizada. 3.3 CONTAINERS JAVA EE Cada tecnologia disponível no servidor Java EE deve ser executada em um container. Um container é um pequeno servidor dentro do servidor Java EE, especializado em um determinado serviço. Por extensão, um servidor Java EE pode ser considerado um conjunto de containeres. O mais famoso exemplo de container é o Tomcat, muitas vezes chamado de servidor JSP [TOMCAT]. Na realidade, ele é um container responsável pela execução de Servlets e JSP. Ficou tão conhecido como servidor por ser um bom substituto aos tradicionais servidores Java EE,

20 20 complexos de administrar e grandes consumidores de recursos de hardware. Ele tornou-se o padrão de fato em containeres JSP, sendo utilizado atualmente por grande parte dos servidores Java EE do mercado. Quando uma aplicação é desenvolvida, seus módulos devem ser empacotados e distribuídos para seus respectivos containeres. Empacotamento é o processo pelo qual todos os programas, bibliotecas e arquivos de configuração são colocados num único arquivo compactado chamado package [BALL 2006]. Uma das funções do servidor Java EE é receber o pacote e distribuir cada módulo para seu respectivo container. Uma vez que o container é dependente do servidor Java EE e não da aplicação, um componente pode se comportar de maneiras diferentes, de acordo com a configuração do container. Um exemplo: um EJB distribuído para um servidor Java EE de testes e também para um de produção. Com os servidores configurados para acessar bancos de dados diferentes, o EJB acessaria diferentes informações, sem que precisasse ser alterado. Os tipos de container do Java EE são (ver Figura 6): Container EJB: executa os EJB. O container, por sua vez, é executado dentro do servidor Java EE; Container web: executa JSP e servlets. É executado dentro do servidor Java EE; Container da aplicação cliente: é executado na estação cliente, e é responsável pela execução de aplicações desktop; Container applet: executa os applets carregados em navegadores web, na estação cliente. Normalmente, é formado pelo navegador e um plugin Java.

21 Figura 6: Tipos de container do Java EE 5 [BALL 2006] 21

22 22 4 TECNOLOGIAS EMPREGADAS O que é mostrado a partir deste ponto é uma prova de tecnologia utilizando os principais recursos da plataforma Java EE de maneira integrada. O foco não é a linguagem de programação em si, embora em alguns momentos a discussão de alguns pontos seja necessária. O objetivo principal é demonstrar como realizar a integração entre componentes distribuídos por plataformas tão diferentes, como o desktop e um container EJB. A seguir, são discutidos todas as tecnologias e software necessários à aplicação, e os motivos pelos quais são utilizados neste trabalho. 4.1 AMBIENTE DE DESENVOLVIMENTO INTEGRADO Todo desenvolvedor tem preferência por algum Integrated Development Environment (IDE), seja porque consome menos memória, possui mais recursos, ou porque geram automaticamente quase a totalidade do código. Também existem desenvolvedores que não utilizam IDEs, preferindo editores mais simples, que normalmente não geram código automaticamente. IDE é um aplicativo que agrega várias ferramentas com o único objetivo de desenvolver software. A maioria dos IDE possui ferramentas que permitem: Editar o código fonte e formatá-lo dentro de padrões próprios ou definidos pelo usuário; Automatizar tarefas repetitivas, como gerar os pacotes de distribuição da aplicação; Compilar, executar, testar e depurar o código; Navegar pela estrutura do projeto; Verificar erros de digitação e possíveis erros de compilação, propondo soluções alternativas; Integrar-se com ferramentas externas, como versionadores, servidores de aplicação e utilitários de construção e distribuição; Refactoring (propagação das alterações efetuadas em um componente para todas as suas ocorrências no projeto por exemplo, renomear uma classe); Auditoria e otimização do código, para garantir a aderência a padrões e convenções de mercado;

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

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

Leia mais

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

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

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel A linguagem JAVA A linguagem Java O inicio: A Sun Microsystems, em 1991, deu inicio ao Green Project chefiado por James Gosling. Projeto que apostava

Leia mais

UFG - Instituto de Informática

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

Leia mais

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira

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

Leia mais

Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério.

Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério. EDSON GONÇALVES Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério. AGRADECIMENTOS Primeiramente gostaria de agradecer

Leia mais

Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010

Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010 Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010 Primeira Dica Afirmação O que é Java? Características do Java Como Java Funciona Plataforma Java Edições Java Java SE Java EE Java ME

Leia mais

Desenvolvendo Aplicações Web com NetBeans

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

Leia mais

Relatório do GPES. Descrição dos Programas e Plugins Utilizados. Programas Utilizados:

Relatório do GPES. Descrição dos Programas e Plugins Utilizados. Programas Utilizados: Relatório do GPES Relatório referente à instalação dos programas e plugins que estarão sendo utilizados durante o desenvolvimento dos exemplos e exercícios, sendo esses demonstrados nos próximos relatórios.

Leia mais

Capítulo 1. Introdução ao Java. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Capítulo 1. Introdução ao Java. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra Capítulo 1 Introdução ao Java Objetivos do Capítulo Compor uma visão histórica mínima para a compreensão da origem do Java. Compreender o que é o Java e para que finalidades ele é empregado. Delinear algumas

Leia mais

Linguagem de Programação JAVA

Linguagem de Programação JAVA Linguagem de Programação JAVA Curso Técnico em Informática Modalida Integrado Instituto Federal do Sul de Minas, Câmpus Pouso Alegre Professora: Michelle Nery Agenda JAVA Histórico Aplicações Pós e Contras

Leia mais

Desenvolvimento Web TCC-00.226 Turma A-1

Desenvolvimento Web TCC-00.226 Turma A-1 Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo Introdução ao Ambiente de Desenvolvimento Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226

Leia mais

J2EE TM Java 2 Plataform, Enterprise Edition

J2EE TM Java 2 Plataform, Enterprise Edition CURSO DE GRADUAÇÃO J2EE TM Java 2 Plataform, Enterprise Edition Antonio Benedito Coimbra Sampaio Junior abc@unama.br OBJETIVOS DO CURSO Capacitar os alunos no desenvolvimento de aplicações para a WEB com

Leia mais

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

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

Leia mais

Aula 1 - Introdução e configuração de ambiente de desenvolvimento

Aula 1 - Introdução e configuração de ambiente de desenvolvimento Aula 1 - Introdução e configuração de ambiente de desenvolvimento Olá, seja bem-vindo à primeira aula do curso para desenvolvedor de Android, neste curso você irá aprender a criar aplicativos para dispositivos

Leia mais

Estudo comparativo entre tecnologias Java: Applet e JWS.

Estudo comparativo entre tecnologias Java: Applet e JWS. Estudo comparativo entre tecnologias Java: Applet e JWS. Clara Aben-Athar B. Fernandes¹, Carlos Alberto P. Araújo¹ 1 Centro Universitário Luterano de Santarém Comunidade Evangélica Luterana (CEULS/ULBRA)

Leia mais

MAGREGISTER 1.0: GERADOR DE INTERFACES DE COLETAS DE DADOS PARA PDA S. Acadêmico: Gilson Chequeto Orientador: Adilson Vahldick

MAGREGISTER 1.0: GERADOR DE INTERFACES DE COLETAS DE DADOS PARA PDA S. Acadêmico: Gilson Chequeto Orientador: Adilson Vahldick MAGREGISTER 1.0: GERADOR DE INTERFACES DE COLETAS DE DADOS PARA PDA S Acadêmico: Gilson Chequeto Orientador: Adilson Vahldick Roteiro Introdução Objetivos do trabalho Fundamentação teórica Desenvolvimento

Leia mais

Daniel Wildt dwildt@gmail.com. FACENSA Grupo de Estudos Java - FUJA Slide: 1

Daniel Wildt dwildt@gmail.com. FACENSA Grupo de Estudos Java - FUJA Slide: 1 Apresentação Tecnologia Java Daniel Wildt dwildt@gmail.com FACENSA Grupo de Estudos Java - FUJA Slide: 1 1. Java 2. JCP 3. Tecnologia Java 4. J2ME/J2SE/J2EE 5. Certificações 6. JUG 7. RSJUG Agenda 8. Ambiente

Leia mais

A Linguagem Algorítmica Estrutura de Repetição. Ex. 2

A Linguagem Algorítmica Estrutura de Repetição. Ex. 2 Estrutura de Repetição. Ex. 2 A ESTRUTURA Enquanto faça{} É MELHOR UTILIZADA PARA SITUAÇÕES ONDE O TESTE DE CONDIÇÃO (V OU F) PRECISA SER VERIFICADO NO INÍCIO DA ESTRUTURA DE REPETIÇÃO.

Leia mais

JAVA ENTERPRISE EDITION: PERSISTÊNCIA DE BANCO DE DADOS

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

Leia mais

Fundamentos de Java. Prof. Marcelo Cohen. 1. Histórico

Fundamentos de Java. Prof. Marcelo Cohen. 1. Histórico Fundamentos de Java Prof. Marcelo Cohen 1. Histórico 1990 linguagem Oak; desenvolvimento de software embutido para eletrodomésticos S.O. para o controle de uma rede de eletrodomésticos o surgimento da

Leia mais

Programação de Computadores II TCC-00.309 Turma A-1

Programação de Computadores II TCC-00.309 Turma A-1 Material elaborado pelo prof. Leandro A. F. Fernandes com contribuições dos profs. Anselmo A. Montenegro e Marcos Lage Programação de Computadores II TCC-00.309 Turma A-1 Conteúdo Introdução ao Ambiente

Leia mais

Introdução à Linguagem Java

Introdução à Linguagem Java Introdução à Linguagem Java Histórico: Início da década de 90. Pequeno grupo de projetos da Sun Microsystems, denominado Green. Criar uma nova geração de computadores portáveis, capazes de se comunicar

Leia mais

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

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

Leia mais

CURSO DESENVOLVEDOR JAVA Edição 2009

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

Leia mais

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

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

Leia mais

Introdução a Linguagem

Introdução a Linguagem Introdução a Linguagem Prof. Edwar Saliba Júnior Fevereiro de 2011 Unidade 03 Introdução a Linguagem Java 1 Conteúdo Máquina Virtual (JVM) Histórico de Java Case Sensitive Tipos Primitivos Tipo String

Leia mais

Introdução ao Derby. Version 10.2 Derby Document build: December 11, 2006, 7:16:07 AM (PST)

Introdução ao Derby. Version 10.2 Derby Document build: December 11, 2006, 7:16:07 AM (PST) Introdução ao Derby Version 10.2 Derby Document build: December 11, 2006, 7:16:07 AM (PST) Contents Direitos autorais reservados... 3 Introdução ao Derby...4 Opções de implementação...4 Requisitos do

Leia mais

Lógica de Programação

Lógica de Programação Lógica de Programação Unidade 4 Ambiente de desenvolvimento Java QI ESCOLAS E FACULDADES Curso Técnico em Informática SUMÁRIO A LINGUAGEM JAVA... 3 JVM, JRE, JDK... 3 BYTECODE... 3 PREPARANDO O AMBIENTE

Leia mais

Mini-curso Gratuito. Globalcode - The Developers Company Slide 1

Mini-curso Gratuito. Globalcode - The Developers Company Slide 1 Mini-curso Gratuito Globalcode - The Developers Company Slide 1 Globalcode - The Developers Company Slide 2 Agenda Parte teórica 1. Introdução 2. Vantagens da tecnologia Java 3. Máquinas Virtuais 4. Áreas

Leia mais

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

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

Leia mais

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) Sumário. Java 2 Enterprise Edition. J2EE (Java 2 Enterprise Edition)

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) Sumário. Java 2 Enterprise Edition. J2EE (Java 2 Enterprise Edition) Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) J2EE () Sumário Introdução J2EE () APIs J2EE Web Container: Servlets e JSP Padrão XML 2 J2EE é Uma especificação para servidores

Leia mais

Introdução à Linguagem Java. Departamento de Informática Prof. Anselmo C. de Paiva

Introdução à Linguagem Java. Departamento de Informática Prof. Anselmo C. de Paiva Introdução à Linguagem Java Departamento de Informática Prof. Anselmo C. de Paiva Breve Histórico Sun Microsystems, 90/91: projeto de uma linguagem de programação pequena que pudesse ser usada em dispositivos

Leia mais

Especificações Técnicas

Especificações Técnicas Visual COBOL é a solução líder da indústria para o desenvolvimento de aplicações COBOL e implantação em sistemas Windows, Unix e Linux. Ele combina as melhores ferramentas de desenvolvimento de sua classe

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS EM JAVA*

PROGRAMAÇÃO ORIENTADA A OBJETOS EM JAVA* PROGRAMAÇÃO ORIENTADA A OBJETOS EM JAVA* Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR Fev/2014 *Adaptado de PACHECO, R C S & RIEKE, R N INE UFSC Disponível em: http://wwwstelaufscbr/~pacheco/dsoo/htm/downloadshtm

Leia mais

Instalando o IIS 7 no Windows Server 2008

Instalando o IIS 7 no Windows Server 2008 Goiânia, 16/09/2013 Aluno: Rafael Vitor Prof. Kelly Instalando o IIS 7 no Windows Server 2008 Objetivo Esse tutorial tem como objetivo demonstrar como instalar e configurar o IIS 7.0 no Windows Server

Leia mais

Instalando o IIS 7 no Windows Server 2008

Instalando o IIS 7 no Windows Server 2008 Goiânia, 16/09/2013 Aluno: Rafael Vitor Prof. Kelly Instalando o IIS 7 no Windows Server 2008 Objetivo Esse tutorial tem como objetivo demonstrar como instalar e configurar o IIS 7.0 no Windows Server

Leia mais

DESENVOLVIMENTO DE APLICATIVOS PARA CELULAR JAVA 2 MICRO EDITION

DESENVOLVIMENTO DE APLICATIVOS PARA CELULAR JAVA 2 MICRO EDITION DESENVOLVIMENTO DE APLICATIVOS PARA CELULAR JAVA 2 MICRO EDITION Robison Cris Brito Centro Federal de Educação Tecnológica do Paraná Unidade de Pato Branco robison@pb.cefetpr.br RESUMO Engana-se quem acha

Leia mais

Integrando Eclipse e Websphere Application Server Community Edition

Integrando Eclipse e Websphere Application Server Community Edition 1 Integrando Eclipse e Websphere Application Server Community Edition Sobre o Autor Carlos Eduardo G. Tosin (carlos@tosin.com.br) é formado em Ciência da Computação pela PUC-PR, pós-graduado em Desenvolvimento

Leia mais

Java e Banco de Dados: JDBC, Hibernate e JPA

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

Leia mais

Java & OpenJDK. Thiago S. Gonzaga. Sun Campus Ambassador thiago.gonzaga@sun.com

Java & OpenJDK. Thiago S. Gonzaga. Sun Campus Ambassador thiago.gonzaga@sun.com Java & OpenJDK Thiago S. Gonzaga Sun Campus Ambassador thiago.gonzaga@sun.com Tópicos Sobre a Sun Microsystems Algumas tecnologias da Sun Linguagem de Programação Ciclo de Desenvolvimento O que é Java?

Leia mais

Palestrante. Alexandre Faria

Palestrante. Alexandre Faria Palestrante Alexandre Faria Desenvolvedor e Instrutor JAVA e Web da Vertical Training. Trabalhando em projetos envolvendo tecnologias Java / J2 EE. Experiência em análise, arquitetura e desenvolvimento

Leia mais

Java. Guia do Programador. Peter Jandl Junior. Novatec

Java. Guia do Programador. Peter Jandl Junior. Novatec Java Guia do Programador Peter Jandl Junior Novatec Capítulo 1 Introdução Este capítulo apresenta a plataforma Java, seu histórico resumido, suas principais características e aplicações. Também são indicados

Leia mais

SCC-0263. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br

SCC-0263. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br SCC-0263 Técnicas de Programação para WEB Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br 1 Cronograma Fundamentos sobre servidores e clientes Linguagens Server e Client side

Leia mais

Linguagem de Programação Visual

Linguagem de Programação Visual Linguagem de Programação Visual Unidade 1 Ambiente de desenvolvimento Curso Técnico em Informática SUMÁRIO INTRODUÇÃO... 3 SOBRE O JAVA... 3 AMBIENTE DE DESENVOLVIMENTO... 5 RECURSOS DA FERRAMENTA NETBEANS...

Leia mais

FACULDADE DE TECNOLOGIA SENAC GOIÁS CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES. 5º PERÍODO Gestão da Tecnologia da Informação

FACULDADE DE TECNOLOGIA SENAC GOIÁS CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES. 5º PERÍODO Gestão da Tecnologia da Informação FACULDADE DE TECNOLOGIA SENAC GOIÁS CONTROLE DE ACESSO USANDO O FRAMEWORK RICHFACES 5º PERÍODO Gestão da Tecnologia da Informação Alunos: Alessandro Aparecido André Alexandre Bruno Santiago Thiago Castilho

Leia mais

DESENVOLVIMENTO COM JAVA EE E SUAS ESPECIFICAÇÕES

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

Leia mais

Java II. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com

Java II. Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Java II Sérgio Luiz Ruivace Cerqueira sergioruivace@gmail.com Java Web Arquitetura Aplicações web são basicamente constituídas de: Requisições Respostas Model View Controller (MVC) O que é MVC? Padrão

Leia mais

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

Leia mais

SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS

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

Leia mais

LINGUAGEM DE PROGRAMAÇÃO Material de apoio - Aula II (25/02/2008) - Profº Sidney Leal

LINGUAGEM DE PROGRAMAÇÃO Material de apoio - Aula II (25/02/2008) - Profº Sidney Leal AMBIENTE JAVA CONCEITO LINGUAGEM DE PROGRAMAÇÃO O ambiente de desenvolvimento Java é composto de ferramentas e utilitários para a realização de tarefas (depuração, compilação e documentação) relacionadas

Leia mais

Java Linguagem de programação

Java Linguagem de programação 1 Linguagem Java O que é o Java? Java é uma linguagem de programação, apresentada ao mercado em 1995, pela Sun Microsystems, que provocou e ainda provoca excitação e entusiasmo em programadores, analistas

Leia mais

Manual de Instalação e Configuração

Manual de Instalação e Configuração e Configuração MyABCM 4.0 Versão 4.00-1.00 2 Copyright MyABCM. Todos os direitos reservados Reprodução Proibida Índice Introdução... 5 Arquitetura, requisitos e cenários de uso do MyABCM... 7 Instalação

Leia mais

UNIVERSIDADE ESTADUAL DE PONTA GROSSA

UNIVERSIDADE ESTADUAL DE PONTA GROSSA UNIVERSIDADE ESTADUAL DE PONTA GROSSA SECRETARIA MUNICIPAL DE GESTÃO DE RECURSOS HUMANOS CONCURSO PÚBLICO PARA ANALISTA DE SUPORTE 08 DE NOVEMBRO DE 2009... (NOME COMPLETO EM LETRA DE FORMA) INSTRUÇÕES

Leia mais

Programação para Internet II

Programação para Internet II Programação para Internet II Aulas 01 e 02 Prof. Fernando Freitas Costa http://blog.fimes.edu.br/fernando nando@fimes.edu.br Conteúdo Programático Instalação e configuração básica do Eclipse Indigo e do

Leia mais

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

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

Leia mais

MÓDULO Programação para Web 2

MÓDULO Programação para Web 2 MÓDULO Programação para Web 2 Sistemas Web na JEE OBJETIVO DO MÓDULO Arquitetura Web em aplicações JEE Conceitos iniciais Desenvolvimento Web Aplicações web tornam-se mais e mais importantes Mais e mais

Leia mais

ANEXO 05 ARQUITETURAS TECNOLÓGICAS PROCERGS

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

Leia mais

J2ME PLATAFORMA DE DESENVOLVIMENTO JAVA PARA DISPOSITIVOS MÓVEIS

J2ME PLATAFORMA DE DESENVOLVIMENTO JAVA PARA DISPOSITIVOS MÓVEIS J2ME PLATAFORMA DE DESENVOLVIMENTO JAVA PARA DISPOSITIVOS MÓVEIS Ana Paula Carrion 1, Késsia Rita da Costa Marchi 1, Jaime Willian Dias 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil anapaulacarrion@hotmail.com,

Leia mais

Java Básico. Aula 1 por Thalles Cezar

Java Básico. Aula 1 por Thalles Cezar + Java Básico Aula 1 por Thalles Cezar + Histórico Green Project (1991) Desenvolver plataforma para eletrodomésticos inteligentes Tentaram usar C++ Mas resolveram desenvolver uma linguagem própria Oak

Leia mais

Programação para Internet II

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

Leia mais

FileMaker Pro 13. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 13

FileMaker Pro 13. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 13 FileMaker Pro 13 Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 13 2007-2013 FileMaker Inc. Todos os direitos reservados. FileMaker Inc. 5201 Patrick Henry Drive Santa Clara,

Leia mais

Manual do Usuário Características e recursos básicos Enterprise Resource Planning

Manual do Usuário Características e recursos básicos Enterprise Resource Planning Manual do Usuário Características e recursos básicos Enterprise Resource Planning www.pwi.com.br 1 Volpe Enterprise Resource Planning Este manual não pode, em parte ou no seu todo, ser copiado, fotocopiado,

Leia mais

Fiery Network Controller para Xerox WorkCentre 7800 Series. Bem-vindo

Fiery Network Controller para Xerox WorkCentre 7800 Series. Bem-vindo Fiery Network Controller para Xerox WorkCentre 7800 Series Bem-vindo 2013 Electronics For Imaging. As informações nesta publicação estão cobertas pelos termos dos Avisos de caráter legal deste produto.

Leia mais

Thiago Hernandes de Souza

Thiago Hernandes de Souza Thiago Hernandes de Souza Dedicatória Confia ao SENHOR as tuas obras, e teus pensamentos serão estabelecidos. (Provérbios 16:3) Primeiramente ao Senhor Jesus Cristo, por fazer o intermédio junto a Deus

Leia mais

FileMaker Pro 12. Utilização de uma Conexão de Área de Trabalho Remota com o

FileMaker Pro 12. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 12 Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 12 2007 2012 FileMaker Inc. Todos os direitos reservados. FileMaker Inc. 5201 Patrick Henry Drive Santa Clara,

Leia mais

IBM Tivoli Directory Server Versão 5.2 Leia-me do Cliente

IBM Tivoli Directory Server Versão 5.2 Leia-me do Cliente IBM Tivoli Directory Server Versão 5.2 Leia-me do Cliente Nota Antes de utilizar estas informações e o produto suportado por elas, leia as informações gerais em Avisos, na página 7. Prefácio Este Leia-me

Leia mais

Java Laboratório Aula 1. Divisões da Plataforma. Introdução a Plataforma Java. Visão geral da arquitetura da

Java Laboratório Aula 1. Divisões da Plataforma. Introdução a Plataforma Java. Visão geral da arquitetura da Java Laboratório Aula 1 Programação orientada a objetos Profa. Renata e Cristiane Introdução a Plataforma Java O que é Java? Tecnologia Linguagem de Programação Ambiente de Execução (JVM) Tudo isso é a

Leia mais

Symantec Backup Exec 12.5 for Windows Servers. Guia de Instalação Rápida

Symantec Backup Exec 12.5 for Windows Servers. Guia de Instalação Rápida Symantec Backup Exec 12.5 for Windows Servers Guia de Instalação Rápida 13897290 Instalação do Backup Exec Este documento contém os seguintes tópicos: Requisitos do sistema Antes de instalar Sobre a conta

Leia mais

PROGRAMAÇÃO JAVA. Parte 1

PROGRAMAÇÃO JAVA. Parte 1 PROGRAMAÇÃO JAVA Parte 1 O que é um programa? Um algoritmo (sequência de operações elementares - instruções) convertido para uma linguagem que possa ser executada por um computador Programa = Algoritmos

Leia mais

Linguagens de. Aula 02. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br

Linguagens de. Aula 02. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagens de Programação III Aula 02 Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagens de Programação Técnica de comunicação padronizada para enviar instruções a um computador. Assim

Leia mais

Manual STCP Web Admin 27/07/2009, Riversoft Integração e Desenvolvimento

Manual STCP Web Admin 27/07/2009, Riversoft Integração e Desenvolvimento STCP OFTP Web Admin Versão 4.0.0 Riversoft Integração e Desenvolvimento de Software Ltda Av.Dr.Delfim Moreira, 537 Centro Santa Rita do Sapucaí, Minas Gerais CEP 37540 000 Tel/Fax: 35 3471 0282 E-mail:

Leia mais

Linguagem Java. Arquitetura e Ambiente de Desenvolvimento. Arquitetura e Ambiente de Desenvolvimento Prof. Anderson Augustinho Uniandrade

Linguagem Java. Arquitetura e Ambiente de Desenvolvimento. Arquitetura e Ambiente de Desenvolvimento Prof. Anderson Augustinho Uniandrade Linguagem Java de Desenvolvimento Máquina Virtual Um código intermediário, chamado de bytecode, é gerado quando um programa Java é compilado. Este bytecode é interpretado pelas máquinas virtuais java (JVMs)

Leia mais

UFG - Instituto de Informática

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

Leia mais

manual Versão 0.3 Português do Brasil (Brazilian Portuguese) FunTester 0.7c

manual Versão 0.3 Português do Brasil (Brazilian Portuguese) FunTester 0.7c manual Versão 0.3 Português do Brasil (Brazilian Portuguese) FunTester 0.7c Versões deste documento 0.3 Melhoria da Introdução; Descritos detalhes sobre Instalação e Extensões de Arquivos; Descritos tópicos

Leia mais

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

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

Leia mais

BANCO DE DADOS II. AULA MySQL.

BANCO DE DADOS II. AULA MySQL. UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II BANCO DE DADOS II AULA MySQL. DISCIPLINA: Banco de Dados II PROF.: ROMULO VANZIN Data: 27/06/2014 Banco

Leia mais

Versão 1.0 Janeiro de 2011. Xerox Phaser 3635MFP Plataforma de interface extensível

Versão 1.0 Janeiro de 2011. Xerox Phaser 3635MFP Plataforma de interface extensível Versão 1.0 Janeiro de 2011 Xerox Phaser 3635MFP 2011 Xerox Corporation. XEROX e XEROX e Design são marcas da Xerox Corporation nos Estados Unidos e/ou em outros países. São feitas alterações periodicamente

Leia mais

Manual de referência do HP Web Jetadmin Database Connector Plug-in

Manual de referência do HP Web Jetadmin Database Connector Plug-in Manual de referência do HP Web Jetadmin Database Connector Plug-in Aviso sobre direitos autorais 2004 Copyright Hewlett-Packard Development Company, L.P. A reprodução, adaptação ou tradução sem permissão

Leia mais

Integrando Java e VRML - Configuração Básica

Integrando Java e VRML - Configuração Básica Integrando Java e VRML - Configuração Básica 1 Jeferson Luiz Rodrigues Souza(1) Rubens Redel (2) Janine Kniess(3) 1-Bolsista PROBIC-UDESC, CCT-UDESC, dcc6jlrs@joinville.udesc.br 2-Bolsista PROBIC-UDESC,

Leia mais

1. Instalando o Java 7 JavaFX e o Netbeans

1. Instalando o Java 7 JavaFX e o Netbeans 1. Instalando o Java 7 JavaFX e o Netbeans Faça o download do Java 7 que inclui JavaFX no site do Oracle: http://www.oracle.com/technetwork/java/javase /downloads/index.html. Clique no License Agreement

Leia mais

GUIA DE INSTALAÇÃO E CONFIGURAÇÃO. POSTGRESQL Versão 8.3

GUIA DE INSTALAÇÃO E CONFIGURAÇÃO. POSTGRESQL Versão 8.3 GUIA DE INSTALAÇÃO E CONFIGURAÇÃO POSTGRESQL Versão 8.3 Sumário 1. Introdução... 3 2. Pré-Requisitos... 3 3. Instalação do PostgreSQL... 3 4. Instalação PgOleDB... 10 5. Criação do Banco de Dados... 13

Leia mais

Demoiselle Tutorial Módulo 1 Arquitetura

Demoiselle Tutorial Módulo 1 Arquitetura Demoiselle Tutorial Módulo 1 Arquitetura Vanderson Botelho da Silva (SERPRO/SUPST/STCTA) Emerson Sachio Saito (SERPRO/CETEC/CTCTA) Flávio Gomes da Silva Lisboa (SERPRO/CETEC/CTCTA) Serge Normando Rehem

Leia mais

Programação para Dispositivos Móveis. Prof. Wallace Borges Cristo

Programação para Dispositivos Móveis. Prof. Wallace Borges Cristo Programação para Dispositivos Móveis Prof. Wallace Borges Cristo Acesso a informação Notícias, Ringtones, Vídeos Messenger/Chat Jogos Acesso a instituições financeiras M-commerce (Mobile Commerce) Aplicações

Leia mais

Programação para Internet Orientada a Objetos com PHP & MySQL Visão Geral de Programação Orientada a Objetos com PHP & MySQL II

Programação para Internet Orientada a Objetos com PHP & MySQL Visão Geral de Programação Orientada a Objetos com PHP & MySQL II Programação para Internet Orientada a Objetos com PHP & MySQL Visão Geral de Programação Orientada a Objetos com PHP & MySQL II Prof. MSc. Hugo Souza Na última aula falamos um pouco da necessidade do surgimento

Leia mais

4 Desenvolvimento da ferramenta

4 Desenvolvimento da ferramenta direcionados por comportamento 38 4 Desenvolvimento da ferramenta Visando facilitar a tarefa de documentar requisitos funcionais e de gerar testes automáticos em uma única ferramenta para proporcionar

Leia mais

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

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

Leia mais

Procedimentos para Configuração do Ambiente J2EE e J2SE em Ambiente Windows

Procedimentos para Configuração do Ambiente J2EE e J2SE em Ambiente Windows Procedimentos para Configuração do Ambiente J2EE e J2SE em Ambiente Windows 1 - Configuração do J2SDKSE (Java 2 SDK Standard Edition) Deve-se obter o arquivo j2sdk-1_4_2_03-windows-i586-p.exe ou mais recente

Leia mais

Fiery Network Controller para DocuColor 250/240 SERVER & CONTROLLER SOLUTIONS. Bem-vindo

Fiery Network Controller para DocuColor 250/240 SERVER & CONTROLLER SOLUTIONS. Bem-vindo Fiery Network Controller para DocuColor 250/240 SERVER & CONTROLLER SOLUTIONS Bem-vindo 2005 Electronics for Imaging, Inc. As informações nesta publicação estão cobertas pelos termos dos Avisos de caráter

Leia mais

Introdução ao Delphi. Introdução. Edições do Software. Capítulo 1. InforBRás - Informática Brasileira Ltda. O Que é o Delphi.

Introdução ao Delphi. Introdução. Edições do Software. Capítulo 1. InforBRás - Informática Brasileira Ltda. O Que é o Delphi. Capítulo 1 O Que é o Delphi Diferenças entre Delphi Client/Server do Delphi for Windows Características que compõem o Integrated Development Invironment (IDE) Como o Delphi se encaixa na família Borland

Leia mais

Introdução ao IDE Netbeans (Programação Java)

Introdução ao IDE Netbeans (Programação Java) Universidade Federal do ABC (UFABC) Disciplina: Processamento da Informação (BC-0505) Assunto: Java e Netbeans Introdução ao IDE Netbeans (Programação Java) Conteúdo 1. Introdução... 1 1.1. Programas necessários...

Leia mais

QUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013

QUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013 QUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013 Prezados Senhores da comissão de licitação da UENF, seguem alguns questionamentos acerca do edital de concorrência 01/2013 para esclarecimentos: 1. ANEXO

Leia mais

PERES JULIAO CORGOSINHO BRUNO BORGES LEMOS DE OLIVEIRA RAFAEL REIS GOMES

PERES JULIAO CORGOSINHO BRUNO BORGES LEMOS DE OLIVEIRA RAFAEL REIS GOMES PERES JULIAO CORGOSINHO BRUNO BORGES LEMOS DE OLIVEIRA RAFAEL REIS GOMES NETBEANS & SWING TRABALHO DE LINGUAGEM DE PROGRAMAÇÃO IV Netbeans Nos primórdios da plataforma Java, a Sun fornecia um ambiente

Leia mais

INTRODUÇÃO AO DESENVOLVIMENTO DE JOGOS COM LIBGDX. Vinícius Barreto de Sousa Neto

INTRODUÇÃO AO DESENVOLVIMENTO DE JOGOS COM LIBGDX. Vinícius Barreto de Sousa Neto INTRODUÇÃO AO DESENVOLVIMENTO DE JOGOS COM LIBGDX Vinícius Barreto de Sousa Neto Libgdx é um framework multi plataforma de visualização e desenvolvimento de jogos. Atualmente ele suporta Windows, Linux,

Leia mais

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

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

Leia mais

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

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

Leia mais

PROGRAMAÇÃO PARA SERVIDOR INTRODUÇÃO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano 2012-1

PROGRAMAÇÃO PARA SERVIDOR INTRODUÇÃO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano 2012-1 PROGRAMAÇÃO PARA SERVIDOR EM SISTEMAS WEB INTRODUÇÃO Prof. Dr. Daniel Caetano 2012-1 Visão Geral 1 2 3 4 Apresentação Programação Servidor? O que é Java? Grupos de Trabalho Apresentação Quem é o professor?

Leia mais

Bem-vindo. Fiery Network Controller para DocuColor 240/250

Bem-vindo. Fiery Network Controller para DocuColor 240/250 Fiery Network Controller para DocuColor 240/250 Bem-vindo Neste documento, referências à DocuColor 242/252/260 devem ser referências à DocuColor 240/250. 2007 Electronics for Imaging, Inc. As informações

Leia mais

GEPLANES GESTÃO DE PLANEJAMENTO ESTRATÉGICO MANUAL DE INSTALAÇÃO DO GEPLANES EM UM AMBIENTE WINDOWS

GEPLANES GESTÃO DE PLANEJAMENTO ESTRATÉGICO MANUAL DE INSTALAÇÃO DO GEPLANES EM UM AMBIENTE WINDOWS GEPLANES GESTÃO DE PLANEJAMENTO ESTRATÉGICO MANUAL DE INSTALAÇÃO DO GEPLANES EM UM AMBIENTE WINDOWS JANEIRO 2015 1 Sumário 1. Introdução...3 2. Pré-Requisitos...4 2.1. Instalação do Java Development Kit

Leia mais