Novas Tecnologias em Arquiteturas de Sistemas

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

Download "Novas Tecnologias em Arquiteturas de Sistemas"

Transcrição

1 Novas Tecnologias em Arquiteturas de Sistemas Nilson Sant Anna LAC/INPE Laboratório rio de Computação e Matemática tica Aplicada Caltech California Institute of Technology Janeiro a Dezembro de 2007

2 Agenda Motivação Contexto de Trabalho Objetivos Metodologia de Pesquisa Objetivo 1: A base de sistemas de informação Bancos de Dados Objetivo 2: Novas Arquiteturas Arquitetura Orientada a Serviço - SOA Fundamento do Trabalho Engenharia de Software e Arquiteturas. Exemplo de Sistema: VO Virtual Observatory Conclusão

3 Motivação Com relação à Demanda Sistemas Grandes, Complexos e Integrados Exemplos: Comércio Eletrônico: Amazon.com, Americanas.com, etc Área Cientifica: BRAVO Brasilian VO, Gestão de Clima e Clima Espacial,etc. Aplicações em Diversos Campos do Conhecimento SICS(MECB INPE) LOC (10 anos) Software para Sindicato: ewp-sindct Módulos Controle de Sócios, S Jurídico, Convenios,etc 2065 Arquivos de Códigos C Fontes (1449 JSPs/HTML, 616 JAVA Class) linhas de código c em JAVA (2 anos)

4 Motivação Com relação aos Sistemas Maior demanda de Uso (Web/Intenert( Web/Intenert) Segurança a (compras on-line: Posso Comprar?) Alta disponibilidade (sistema 24/7?) Alta confiabilidade (faz o que quero sempre?) Escalável (se aumentar a demanda posso crescer o sistema?) Alta capacidade de Manutenção Flexibilidade (posso trocar o Gerenciador de Bancos de Dados?) Multi-Language Eficiente (Recursos de Máquina: M memória, processador,etc. Interoperavel (posso relacionar com outros sistemas e trocar Informações?) Autonomia de Serviços (Distribuição de Serviços por servidores diversos)

5 Contexto do Trabalho: : A Caltech Academic Divisions Biology Chemistry & Chemical Engineering Engineering & Applied Science Geological & Planetary Sciences Humanities & Social Sciences Physics, Mathematics & Astronomy Interdisciplinary Programs

6

7 CACR, Caltech's Center for Advanced Computing Research CACR exists to ensure that Caltech is at the forefront of computational science and engineering (CS&E). CS&E is the practice of computer based modeling, simulation and data analysis for the study of scientific phenomena and engineering designs. CACR provides an environment that cultivates multidisciplinary collaborations. Currently work with Caltech groups in applied mathematics, astronomy, biology, engineering, geophysics, and experimental physics

8 Palomar Quest - Observatory The Palomar Observatory is located in north San Diego County, California. It is a world-class center of astronomical research that is owned and operated by the California Institute of Technology. The observatory is home to five telescopes that are nightly used for a wide variety of astronomical research programs. The research is conducted by Caltech's faculty, post-doctoral fellows and students, and by researchers at Caltech's collaborating institutions.

9 48-inch (1.2 m) Samuel Oschin Telescope The Samuel Oschin Telescope was used to generate the Second Palomar Observatory Survey POSS II and the Digital Palomar Observatory Sky Survey DPOSS. In 2000 and 2003 the Samuel Oschin Telescope was converted to using a large format CCD camera to replace photographic plates, and the control system was automated. Search for moving objects in the Solar System Search for variable stars and galaxies The new QUEST camera on the Samuel Oschin Telescope at Palomar has 161 million pixels, making it one of the largest and most capable digital cameras in the world. There are 112 individual CCDs, each 600 x 2400 pixels, arranged in a mosaic of 4 rows or "fingers" of 28 CCDs each (2400 x pixels).

10 The Palomar Quest Sky Survey palquest.org/

11 Objetivo Pesquisar como as Informações Astronômicas são armazenadas e utilizadas no âmbito do projeto Palomar-Quest Survey Pesquisar como os Sistemas e as Aplicações são desenvolvidas em termos de Engenharia e Arquitetura

12 Metodologia de Pesquisa Objetivo 1: Entender o Banco de dados para o PipeLine Construir um Banco de Dados para o 2DPHOT- BRAVO para o Gerenciador PostgreSQL Objetivo 2: Implantar uma Aplicação Cliente SOA para o OpenSkyQuery para o pipeline ; Implantar uma Aplicação exemplo para o projeto BRAVO.

13 Objetivo 1: A base de sistemas de informação Bancos de Dados Banco de Dados do Pipeline Sistema SDSS skyserver database and CASJOBS. Desenvolvido em Parceria com a Microsoft SQL Server Database Banco de Dados e Aplicativos não Prontos. Muito arquivos espalhados no projeto Banco de Dados BRAVO Desenvolvimento do 1 o Modelo Desenvolvimento do Script em PostgreSQL Table 1: SDSS data sizes (in 2006) in terabytes. About 7 TB online and 10 TB in archive (for reprocessing if needed). Product Raw Compressed Pipeline input 25 TB 10 TB Pipeline output (reduced images) 10 TB 4 TB Catalogs 1 TB 1 TB Binned sky and masks ½ TB ½ TB Atlas images 1TB 1TB

14 SDSS skyserver database

15 SQL Search Tools

16 O Modelo para o 2DPhot-BRAVO Baseado em Imagem Astronômica FITs e Informações Geradas pelo Sextractor e 2DPhot. Modelo com Aproximadament e 40 Entidades Modelo Final com 50 a 60 Entidades create table ASTRO_OBJECT ( ID BIGINT not null, NAME CHARACTER VARYING(200) not null, primary key (ID) ); create table BAND ( ID BIGINT not null, NAME CHARACTER VARYING(200) not null, DETECTOR_FK BIGINT, FILTER_FK BIGINT, primary key (ID) ); create table CLASSIFIERS ( ID BIGINT not null, NAME CHARACTER VARYING(200) not null, primary key (ID) ); create table COMPL_PS ( ID BIGINT not null, NAME CHARACTER VARYING(100) not null, PATH CHARACTER VARYING(1024) not null, PROCESSING_FK BIGINT not null, primary key (ID) ); create table DEFAULT_PARAM ( ID BIGINT not null, MINAREA INTEGER not null, DETECT_THRESH INTEGER not null, SATUR_LEVEL BIGINT not null, MAG_ZEROPOINT REAL not null, GAIN REAL not null, PIXEL_SCALE REAL not null, READOUT REAL not null, primary key (ID) );

17 O Modelo para o 2DPhot-BRAVO

18 Objetivo 2: Novas Arquiteturas Arquitetura Orientada a Serviço - SOA

19 Qualidade de um Bom Projeto Fatores de qualidade de McCall Manutenabilidade (Posso arrumar um erro?) Flexibilidade (Posso modificar?) Testabilidade (Posso testar?) Mudanças Carac. Operacionais Novos Ambientes Portabilidade (Operacional em outra plataforma?) Reusabilidade (Posso reutiliza-lo?) Interoperabilidade (Interfacea com outros sistemas?) Corretude (Ele faz o que eu quero?) Confiabilidade (Faz correto todo o momento?) Eficiência (Utiliza todos os recursos disponíveis?) Integridade (É seguro?) Usabilidade (É projetado para o usuário?)

20 Precursores da Qualidade: Coesão e Acoplamento Coesão A coesão de um componente é uma medida da proximidade das relações entre seus componentes Um componente função lógica l ou entidades simples Níveis de Coesão: Funcional cada parte necessária p/ execução de função (melhor( coesão); Seqüencial encial output serve como input Comunicação mesmo input e output Procedimento uma seqüência de controle Temporal Lógica Coincidental (pior coesão) OO coesão natural

21 Precursores da Qualidade: Coesão Acoplamento e Acoplamento Grau de interconexões entre os componentes É desejável que os sistemas sejam fracamente acoplados OO: favorece o acoplamento fraco pois não tem estado compartilhado

22 Arquiteturas

23 Projeto de Arquitetura: Conceitos Subsistema é um sistema cuja operação não depende dos serviços de outros subsistemas. Composto por módulosm Interfaces são utilizadas p/ comunicação entre subsistemas Módulo componente que fornece e utiliza um ou mais serviços p/ outros módulosm Modelo afeta: Desempenho Robustez Distribuição Manutenção

24 Desenvolvimento Monolítico Aplicações vistas como um bloco único Forte acoplamento entre as camadas lógicasl Somente uma camada física Baixa coesão Dificuldade de Manutenção Conseqüência: Dificuldade de modificação. Alterações podem introduzir erros em partes aparentemente não relacionadas Camada de Apresentação Lógica de Negócios Camada de Acesso à dados (Integração) Banco de Dados

25 Cliente Servidor: 2 Camadas Físicas Acrescenta certa quantidade de escalabilidade e flexibilidade; Diminuição do acoplamento duas camadas físicas: f banco de dados poderia ser totalmente substituído desde que as interfaces de acesso permanecessem as mesmas Problemas: Camadas de apresentação e negócios ainda fortemente acopladas; Dificuldade de manutenção e distribuição Forte dependência de plataforma, necessidade aumento de desempenho de hardware. Camada de Apresentação Lógica de Negócios Lógica de Acesso à dados Banco de Dados

26 Arquitetura 3 Camadas FísicasF Alto grau de modularização ão; Fraco acoplamento entre os módulos; Melhor atendimento aos requisitos não funcionais: escalabilidade,, conectividade, tolerância à falhas; Mais facilidade de manutenção; Mais facilidade para distribuição; Ponto fraco: Maior necessidade de conhecimento e profissionalismo da equipe técnica. Profissionais cada vez mais especializados em diversas tecnologias Camada de Apresentação Lógica de Negócios Lógica de Acesso à dados Banco de Dados

27 A plataforma Web Características: Baseada em HTTP (RFC 2068) Protocolo simples de transferência de arquivos Sem estado (não mantém m sessão aberta) Abre conexão para endereço:80 Requisição... GET / Index.html Uma resposta...apresenta Index.html Fecha Conexão

28 Tecnologias para o Servidor Características: Rodam do lado do servidor, portanto, não dependem de suporte por parte dos browsers Browsers fornecem apenas a interface do usuário Interceptam o curso normal da comunicação Recebem dados via requisições HTTP (GET e POST) Devolvem dados através s de respostas HTTP Categorias de Tecnologias CGI - Common Gateway Interface APIs: : ISAPI, NSAPI, Apache API, Servlet API,... Scripts: ASP, JSP, LiveWire (SSJS), Cold Fusion,, PHP,...

29 APIs Servlet Servlet API independente de plataforma e praticamente independente de fabricante Componentes são escritos em Java e se chamam servlets Como os componentes SAPI proprietários, rios, rodam dentro do servidor, mas através s de uma Máquina M Virtual Java Disponível como plug-in ou conector para servidores ue não o suportam diretamente Nativo em servidores Sun, IBM,... Servidor HTTP Interface ISAPI Componente ISAPI Oferecendo Interface Servlet API via conector JVM Servlet Aplicação Remota

30 Linguagens Scripts e JSP Java Server Page Coloca a linguagem de programação dentro do HTML ( e não o contrário) rio) Permite o controle da aparência e estrutura da página p em softwares de design ( DreamWeaver,, FrontPage) Página fica mais legível Quando houver muita programação, código c pode ser escondido em servlets, JavaBeans,, componentes ( por exemplo: componentes ActiveX,, no caso do ASP) Alguns dos mais populares: Microsoft Active Server Pages ( ASP), Sun JavaServer Pages ( JSP), Macromedia Cold Fusion,, PHP

31 Exemplo de Servlet e JSP equivalente import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class SimpleServlet extends HttpServlet { public void doget (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out; response.setcontenttype("text/html"); out = response.getwriter(); String user = request.getparameter("usuario"); if (user == null) user = "World"; out.println("<html><head><title>"); out.println("simple Servlet Output"); out.println("</title></head><body>"); out.println("<h1>simple Servlet Output</H1>"); out.println("<p>hello, " + user); out.println("</body></html>"); out.close(); } } SERVLET: Bom para Processamento <HTML><HEAD> <TITLE>Simple Servlet Output</TITLE> </HEAD><BODY> <% String user = request.getparameter("usuario"); if (user == null) user = "World"; %> <H1>Simple Servlet Output</H1> <P>Hello, <%= user %> </BODY></HTML> JSP: Bom para apresentação

32 Arquitetura: Cenários

33 Utilização de JSP na Aplicação: Arquitetura Elementar Browser JSP/ Servlet Código SQL no JSP try { Class.forName(jdbcDriver).newInstance(); conn = DriverManager.getConnection(dbURL,username, passwd); stmt = conn.createstatement(); rs = stmt.executequery( SELECT * FROM CLIENTES ); ResultSetMetaData rsmd = rs.getmetadata(); int numcols = rsmd.getcolumncount(); %>

34 Introduzindo classes JAVA: Desacoplamento das Camadas Apresentação Integração JSP/ Servlet DAO JSP usando DAO <% Clientes[] clientes = ClientesDAO.getInstance().loadAll();%> <table> <% for(int i=0; i <clientes.length; i++) { %> <tr> <td><%=clientes[i].getnome()%><td> <td><%=clientes[i].getrg()%></td> </tr> <%}%>

35 Introduzindo Componentes: Melhoria na Camada de Apresentação Apresentação Integração Controller DAO JSP/ Servlet

36 Introduzindo Componentes: Mais Desacoplamento e Ganhos em Escala Apresentação Negócios Integração Controller Command Business Delegate DAO Request Dispatcher Service locator JSP/ Servlet

37 Modelo de n Camadas n Tier

38 Sun Java Center SJC Core J2EE Design Patterns

39

40 SOA Service Oriented Architecture

41 Modelo Centralizado para Distribuído Modelo Centralizado Domínio/Identidade de Rede Único Repositório Único Controle Centralizado Ponto de Falha Único Serviço é igual e sempre o Mesmo Modelo Distribuído (Open Federated Model) Vários Domínios de Rede Sem Controle Centralizado Sem Ponto de Falha Único Serviço pode ser igual mas não necessariamente. Central Provider Provider Provider Provider Provider Provider Provider

42 SOA e Web-Services A A software system designed to support interoperable machine-to to-machine interaction over a network. It has an interface described in a machine-processable format. - W3C Palavras Chave: Interoperabilidade e Sistemas Distribuídos Not a new idea: RPC/RMI CORBA DCOM XML-RPC

43 Princípios de SOA Encapsulamento do Serviço Esconder detalhes detalhes de implementação e código Autonomia do Serviço O Serviço tem autonomia sobre a lógica que ele encapsula Acoplamento Fraco ou Baixo Minimizar dependências Contrato de Serviço Acordo com as funções que presta, descritos por documentos descritores Composição de Serviços Os serviços podem ser agregados formando coleções de serviços. Diretório de Serviços (Service discoverability) Serviços podem ser encontrados and agregados através de mecanismos de diretórios (listas ou páginas amarelas)

44 A Arquitetura SOA

45 A Arquitetura de um Sistema de Negócio usando SOA

46 O Projeto dos Observatórios rios Virtuais VO IVOA International VO Alliance

47 Exemplo do NVO (US) JHU/StSci Caltech Registry Publish OAI NCSA Registry Publish OAI 2 Registry OAI Query 4 Goddard DIS 1 3

48 DataScope

49

50

51 O OpenSkyQuery e SkyNodes SkyQuery é uma Aplicação Concentradora e que disponibiliza o acesso a Nós( N s(sky Nodes) ) de um Sistema Distribuído. SkyNode é uma interface dos Nós N s que respeita as regras (protocolos) de Federação do SkyQuery. No coração do SkyQuery existe um cruzamento spacial de catálogos, ou seja, é possível cruzar informações existentes nos nós. n Portanto o SkyQuery tem acesso a catálogos armazenados em localidades geográficas diferentes.

52 O OpenSkyQuery e SkyNodes

53 Fluxo de Dados query SkyQuery SkyNode 1 SkyNode 2 SkyNode 3

54 Serviços Oferecidos Web-Services The following operations are supported. For a formal definition, please review the Service Description. * GetTables Returns tables. * MakePlan Creates an ExecPlan.. This runs cost queries as well. (req. for correct plan ordering) * GetAllSkyNodesVOTable Lists names of all available node shortnames in a votable. * GetAllSkyNodes Lists names of all available node shortnames. * GetMetaTables Returns column info for one column. * GetMetaColumns Returns an array of column info. * GetColumns Returns an array of column names. * NodeContainsColumn * UploadTable Returns literal table name * SubmitQuery Runs a single node query. * GetTableInfo Returns column info for one column. * SubmitDistributedQuery Runs a distributed query query by making a plan and then executing it - you may call the two steps seperately if you wish to view the plan or track progress. * GetColumnInfo Returns column info for one column. * SubmitPlan Executes a plan and returns results. * SubmitDistributedQuerySigma Allows MyData Sigma

55 Um Exemplo: WebFindingClusters Interfaces JSPs Request Response loaddata.java Servlet + Classes e Classes AXIS PostgreSQL - Database

56 Conclusão Os Sistemas (Providers( Providers) ) devem ser desenvolvidos usando arquiteturas Sólidas S e robustas. Portais de Projetos (BRAVO, Clima Espacial, etc) podem ser construídos com objetivo de Federar Nós. Pesquisas em Engenharia de Software (Arquitetura) devem ser intensificadas no INPE e principalmente fortalecida pela pós-graduap graduação para atender a demanda dos projetos. Há muitos conceitos envolvidos quando se trabalha com SOA e muitos ainda poucos explorados (Pesquisa) como a Qualidade de Serviços.

57 Obrigado!

Programação para a Internet. Prof. M.Sc. Sílvio Bacalá Jr sbacala@gmail.com www.facom.ufu.br/~bacala

Programação para a Internet. Prof. M.Sc. Sílvio Bacalá Jr sbacala@gmail.com www.facom.ufu.br/~bacala Programação para a Internet Prof. M.Sc. Sílvio Bacalá Jr sbacala@gmail.com www.facom.ufu.br/~bacala A plataforma WEB Baseada em HTTP (RFC 2068) Protocolo simples de transferência de arquivos Sem estado

Leia mais

PadrãoIX. Módulo II JAVA. Marcio de Carvalho Victorino. Servlets A,L,F,M

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

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 Arquitetura de Aplicações Distribuídas na Web 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

Curso de Java. Geração de Páginas WEB. TodososdireitosreservadosKlais

Curso de Java. Geração de Páginas WEB. TodososdireitosreservadosKlais Curso de Java Geração de Páginas WEB Aplicação WEB Numa aplicação WEB de conteúdo dinâmico As páginas são construídas a partir de dados da aplicação (mantidos num banco de dados). Usuários interagem com

Leia mais

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas)

Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) Sistemas Distribuídos na WEB (Plataformas para Aplicações Distribuídas) Web Container: e JSP Sumário Protocolo HTTP Exemplos de JSP (Java Server Pages) Exemplos JSP 2 Protocolo HTTP URL: Um URL (Uniform

Leia mais

World Wide Web e Aplicações

World Wide Web e Aplicações World Wide Web e Aplicações Módulo H O que é a WWW Permite a criação, manipulação e recuperação de informações Padrão de fato para navegação, publicação de informações e execução de transações na Internet

Leia mais

WWW - World Wide Web

WWW - World Wide Web WWW World Wide Web WWW Cap. 9.1 WWW - World Wide Web Idéia básica do WWW: Estratégia de acesso a uma teia (WEB) de documentos referenciados (linked) em computadores na Internet (ou Rede TCP/IP privada)

Leia mais

programação de páginas de conteúdo dinâmico

programação de páginas de conteúdo dinâmico Programação para a Internet II 1. Conceitos base de programação de páginas de conteúdo dinâmico Nuno Miguel Gil Fonseca nuno.fonseca@estgoh.ipc.pt A internet tal como a vimos até este momento As nossas

Leia mais

Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04

Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04 Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04 Agenda 1. 2. Web Container TomCat 2 3 J2EE permite criar aplicações Web dinâmicas (com conteúdo dinâmico)

Leia mais

Programação Web Aula 12 - Java Web Software

Programação Web Aula 12 - Java Web Software Programação Web Aula 12 - Java Web Software Bruno Müller Junior Departamento de Informática UFPR 25 de Maio de 2015 1 Java 2 Java Web Software 3 Servlets Modelo de Trabalho Funcionamento API Java Código

Leia mais

Arquitetura de uma Webapp

Arquitetura de uma Webapp Arquitetura de uma Webapp Arquitetura J2EE Containers e componentes MVC: introdução Frederico Costa Guedes Pereira 2006 fredguedespereira@gmail.com Plataforma J2EE World Wide Web e a Economia da Informação

Leia mais

Aula 4. Objetivos. Conteúdo dinâmico na internet.

Aula 4. Objetivos. Conteúdo dinâmico na internet. Aula 4 Objetivos Conteúdo dinâmico na internet. Para uma solicitação da Web mais simples, um navegador solicita um documento HTML e o servidor Web encontra o arquivo correspondente e devolve. Se o documento

Leia mais

Associação Carioca de Ensino Superior Centro Universitário Carioca

Associação Carioca de Ensino Superior Centro Universitário Carioca Desenvolvimento de Aplicações Web Lista de Exercícios Métodos HTTP 1. No tocante ao protocolo de transferência de hipertexto (HTTP), esse protocolo da categoria "solicitação e resposta" possui três métodos

Leia mais

Arquiteturas de Aplicações Web. Leonardo Gresta Paulino Murta leomurta@ic.uff.br

Arquiteturas de Aplicações Web. Leonardo Gresta Paulino Murta leomurta@ic.uff.br Arquiteturas de Aplicações Web Leonardo Gresta Paulino Murta leomurta@ic.uff.br Aplicações Convencionais vs. Web Aplicações convencionais Escritas usando uma linguagem de programação (ex.: Java) Sites de

Leia mais

3 Serviços na Web (Web services)

3 Serviços na Web (Web services) 3 Serviços na Web (Web services) 3.1. Visão Geral Com base na definição do Word Wide Web Consortium (W3C), web services são aplicações autocontidas, que possuem interface baseadas em XML e que descrevem

Leia mais

UNIDADE II JAVA SERVLETS

UNIDADE II JAVA SERVLETS UNIDADE II JAVA SERVLETS INTERNET É uma rede de redes, reunindo computadores do Governo, de universidades e empresas fornecendo infra-estrutura para uso de bancos de dados, correio eletrônico, servidores

Leia mais

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP Software cliente: browser e outros Protocolo HTTP Infraestrutura de transporte

Leia mais

Desenvolvimento Web com JSP/Servlets

Desenvolvimento Web com JSP/Servlets Desenvolvimento Web com JSP/Servlets Requisitos Linguagem Java; Linguagem SQL; Noções de HTML; Noções de CSS; Noções de Javascript; Configuração do ambiente JDK APACHE TOMCAT MySQL Instalando o JDK Instalando

Leia mais

Web Browser como o processo cliente. Servidor web com páginas estáticas Vs. Aplicações dinâmicas para a Web:

Web Browser como o processo cliente. Servidor web com páginas estáticas Vs. Aplicações dinâmicas para a Web: Web Browser como o processo cliente Servidor web com páginas estáticas Vs Aplicações dinâmicas para a Web: 1 Cliente Web browser HTTP porto 80 Servidor web... JDBC RMI XML... Base de Dados Aplicação em

Leia mais

J550 Fundamentos de arquitetura Web

J550 Fundamentos de arquitetura Web J550 Fundamentos de arquitetura Web Helder da Rocha (helder@acm.org) www.argonavis.com.br 1 Objetivos Este módulo apresenta uma visão geral da plataforma Web Lado-cliente Lado-servidor Protocolo de comunicação

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 Servlets Servlet Aplicação Java que é executada no servidor que estende a capacidade do servidor Web Alternativa Java para os scripts CGI Gerenciado

Leia mais

Desenvolvimento WEB em JAVA. Palestrante: Lourival F. de Almeida Júnior

Desenvolvimento WEB em JAVA. Palestrante: Lourival F. de Almeida Júnior Desenvolvimento WEB em JAVA Palestrante: Lourival F. de Almeida Júnior Agenda Introdução Servlet Arquitetura de Software Velocity Struts Conclusão Referências Introdução (antes) Programador Produto Introdução

Leia mais

Java na WEB Servlet. Sumário

Java na WEB Servlet. Sumário 1 Java na WEB Servlet Objetivo: Ao final da aula o aluno será capaz de: Utilizar Servlets para gerar páginas web dinâmicas. Utilizar Servlets para selecionar páginas JSPs. Utilizar Servlets como elemento

Leia mais

J550. Model View Controller

J550. Model View Controller J550 Model View Controller 1 Design de aplicações JSP Design centrado em páginas Aplicação JSP consiste de seqüência de páginas (com ou sem beans de dados) que contém código ou links para chamar outras

Leia mais

J550 Testes em Aplicações Web com Cactus

J550 Testes em Aplicações Web com Cactus J550 Testes em Aplicações Web com Cactus Helder da Rocha (helder@acm.org) www.argonavis.com.br 1 Sobre este módulo Este módulo descreve um framework - o Jakarta Cactus - que pode ser utilizado para testar

Leia mais

Desenvolvimento WEB II. Professora: Kelly de Paula Cunha

Desenvolvimento WEB II. Professora: Kelly de Paula Cunha Desenvolvimento WEB II Professora: Kelly de Paula Cunha O Java EE (Java Enterprise Edition): série de especificações detalhadas, dando uma receita de como deve ser implementado um software que utiliza

Leia mais

Argo Navis J931 - Padrões de Design J2EE. Introdução. Objetivos de aprender padrões J2EE. Conhecer padrões para uso na plataforma J2EE

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 (helder@acm.org) argonavis.com.br Objetivos de aprender padrões J2EE Conhecer padrões para uso na plataforma J2EE Padrões permitem maior reuso, menos

Leia mais

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

Leia mais

10. Aplicações usando CGI, ASP e JSP

10. Aplicações usando CGI, ASP e JSP 10. Aplicações usando CGI, ASP e JSP Este módulo apresenta exemplos de aplicações usando CGI, JSP e ASP. Não pretende mostrar como construir aplicações em ASP e JSP pois tais tecnologias exigem conhecimentos

Leia mais

Java Servlets. Leonardo Gresta Paulino Murta leomurta@ic.uff.br

Java Servlets. Leonardo Gresta Paulino Murta leomurta@ic.uff.br Java Servlets Leonardo Gresta Paulino Murta leomurta@ic.uff.br Especificação/IDE/Implementação Esse curso foi preparado em 03/2015 usando a seguinte especificação, IDE e implementação Especificação Java

Leia mais

Programação WEB Introdução

Programação WEB Introdução Programação WEB Introdução Rafael Vieira Coelho IFRS Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Sul Campus Farroupilha rafael.coelho@farroupilha.ifrs.edu.br Roteiro 1) Conceitos

Leia mais

Java para Desenvolvimento Web

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

Leia mais

Service Oriented Architecture SOA

Service Oriented Architecture SOA Service Oriented Architecture SOA Arquitetura orientada aos serviços Definição: Arquitetura de sistemas distribuídos em que a funcionalidade é disponibilizada sob a forma de serviços (bem definidos e independentes)

Leia mais

Arquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC

Arquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC Arquitetura de Aplicações JSP/Web Padrão Arquitetural MVC Arquitetura de Aplicações JSP/Web Ao projetar uma aplicação Web, é importante considerála como sendo formada por três componentes lógicos: camada

Leia mais

Introdução a Servlets

Introdução a Servlets Linguagem de Programação para Web Introdução a Servlets Prof. Mauro Lopes 1-31 21 Objetivos Iniciaremos aqui o estudo sobre o desenvolvimento de sistemas web usando o Java. Apresentaremos nesta aula os

Leia mais

Curso de Aprendizado Industrial Desenvolvedor WEB

Curso de Aprendizado Industrial Desenvolvedor WEB Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos II Professor: Cheli dos S. Mendes da Costa Modelo Cliente- Servidor Modelo de Aplicação Cliente-servidor Os

Leia mais

Resumo: Perguntas a fazer ao elaborar um projeto arquitetural

Resumo: Perguntas a fazer ao elaborar um projeto arquitetural Resumo: Perguntas a fazer ao elaborar um projeto arquitetural Sobre entidades externas ao sistema Quais sistemas externos devem ser acessados? Como serão acessados? Há integração com o legado a ser feita?

Leia mais

Web Services. Integração de aplicações na Web. Sistemas Distribuídos

Web Services. Integração de aplicações na Web. Sistemas Distribuídos Web Services Integração de aplicações na Web Integração de Aplicações na Web Interoperação entre ambientes heterogêneos desafios diversidade de componentes: EJB, CORBA, DCOM... diversidade de linguagens:

Leia mais

Programação em Rede. Servlets. Manipulação de dados de input em Servlets

Programação em Rede. Servlets. Manipulação de dados de input em Servlets Servlets Manipulação de dados de input em Servlets Os dados de um formulário podem ser utilizados para pedidos GET ou POST. Com servlets JAVA esta operação é efectuada pelo método getparameter de HttpServletRequest,

Leia mais

Trabalho de Sistemas Distribuídos

Trabalho de Sistemas Distribuídos Cássio de Olivera Ferraz Trabalho de Sistemas Distribuídos Petrópolis 2015, v-1.0 Cássio de Olivera Ferraz Trabalho de Sistemas Distribuídos Trabalho sobre sistemas distribuídos e suas tecnologias. Universidade

Leia mais

Engenharia de Software Aplicações de Internet

Engenharia de Software Aplicações de Internet Engenharia de Software Aplicações de Internet Eduardo Santos eduardo.edusantos@gmail.com eduardo.santos@planejamento.gov.br www.softwarepublico.gov.br Histórico Por que existe a Internet? Por que existe

Leia mais

Desenvolvimento de Sistemas Web

Desenvolvimento de Sistemas Web Desenvolvimento de Sistemas Web Módulo II: Programação ladoservidor Modelo Cliente-Servidor Solicita serviço Envia resultado Usuário Cliente Rede Servidor! "# %$ & '! $"#( )+*, -./ 021 34 3 576 8 9#4 8

Leia mais

Service Oriented Architecture (SOA)

Service Oriented Architecture (SOA) São Paulo, 2011 Universidade Paulista (UNIP) Service Oriented Architecture (SOA) Prof. MSc. Vladimir Camelo vladimir.professor@gmail.com 04/09/11 vladimir.professor@gmail.com 1 04/09/11 vladimir.professor@gmail.com

Leia mais

Web Services. (Introdução)

Web Services. (Introdução) Web Services (Introdução) Agenda Introdução SOA (Service Oriented Architecture) Web Services Arquitetura XML SOAP WSDL UDDI Conclusão Introdução Comunicação distribuída Estratégias que permitem a comunicação

Leia mais

Web Services. Autor: Rômulo Rosa Furtado

Web Services. Autor: Rômulo Rosa Furtado Web Services Autor: Rômulo Rosa Furtado Sumário O que é um Web Service. Qual a finalidade de um Web Service. Como funciona o serviço. Motivação para o uso. Como construir um. Referências. Seção: O que

Leia mais

Java para WEB. Servlets

Java para WEB. Servlets Servlets Servlets são classes Java que são instanciadas e executadas em associação com servidores Web, atendendo requisições realizadas por meio do protocolo HTTP. Servlets é a segunda forma que veremos

Leia mais

Uso de servlets nas aplicações web desenvolvidas para a plataforma java 1

Uso de servlets nas aplicações web desenvolvidas para a plataforma java 1 Uso de servlets nas aplicações web desenvolvidas para a plataforma java 1 Resumo Em uma interação feita em uma aplicação Web existem tarefas que devem ser executadas no servidor, tais como processamento

Leia mais

Programação Na Web. Sessão II. Índice. Visão geral da API Sessão. Obter dados sobre uma sessão. Extrair informação sobre uma Sessão

Programação Na Web. Sessão II. Índice. Visão geral da API Sessão. Obter dados sobre uma sessão. Extrair informação sobre uma Sessão Programação Na Web Sessão II António Gonçalves Índice Visão geral da API Sessão Obter dados sobre uma sessão Extrair informação sobre uma Sessão Adicionar Dados a uma sessão 1 Programação Na Web Motivação

Leia mais

Programação II Programação para a Web. Christopher Burrows

Programação II Programação para a Web. Christopher Burrows Programação II Programação para a Web Christopher Burrows Apache Tomcat O Apache Tomcat é um Servlet Container desenvolvido pela Apache Software Foundation. Implementa as tecnologias Java Servlets e Java

Leia mais

5/10/10. Implementação. Building web Apps. Server vs. client side. How to create dynamic contents?" Client side" Server side"

5/10/10. Implementação. Building web Apps. Server vs. client side. How to create dynamic contents? Client side Server side 5/10/10 Implementação Mestrado em Informática Universidade do Minho! 6! Building web Apps How to create dynamic contents?" Client side" Code runs on the client (browser)" Code runs on a virtual machine

Leia mais

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

SOA Introdução. SOA Visão Departamental das Organizações

SOA Introdução. SOA Visão Departamental das Organizações 1 Introdução A Organização é a forma pela qual nós coordenamos nossos recursos de todos os tipos para realizar o trabalho que nos propusemos a fazer. A estrutura de nossas organizações manteve-se basicamente

Leia mais

Introdução. Servlet. Ciclo Vida. Servlet. Exemplos. Prof. Enzo Seraphim

Introdução. Servlet. Ciclo Vida. Servlet. Exemplos. Prof. Enzo Seraphim Introdução Servlet Ciclo Vida Exemplos Servlet Prof. Enzo Seraphim Visão Geral São objetos de uma subclasse de javax.servlet (javax.servlet.httpservlet). Possuem um ciclo de vida. Incluem em seu código,

Leia mais

Padrões de Interação com o Usuário

Padrões de Interação com o Usuário Padrões de Interação com o Usuário Granularidade dos Padrões Padrões estão relacionados a 3 elementos: Contexto ocorre Problema resolve Solução Problemas e Soluções podem ser observados em diferentes níveis

Leia mais

ARQUITETURA DE SISTEMAS. Cleviton Monteiro (cleviton@gmail.com)

ARQUITETURA DE SISTEMAS. Cleviton Monteiro (cleviton@gmail.com) ARQUITETURA DE SISTEMAS Cleviton Monteiro (cleviton@gmail.com) Roteiro Definição Documento de arquitetura Modelos de representação da arquitetura Estilos arquiteturais Arquitetura de sistemas web Arquitetura

Leia mais

Cliente/Servidor. Conceitos Gerais. Graça Bressan. Graça Bressan/LARC 2000 1

Cliente/Servidor. Conceitos Gerais. Graça Bressan. Graça Bressan/LARC 2000 1 Cliente/Servidor Conceitos Gerais Graça Bressan Graça Bressan/LARC 2000 1 Forças de marketing que conduzem à arquitetura cliente/servidor "Cliente/Servidor é um movimento irresistível que está reformulando

Leia mais

Introdução à Plataforma J2EE Java2 Enterprise Edition. Alex de V. Garcia, Dr.

Introdução à Plataforma J2EE Java2 Enterprise Edition. Alex de V. Garcia, Dr. Introdução à Plataforma J2EE Java2 Enterprise Edition 1 O que é a plataforma J2EE? Estende a linguagem Java através de padrões simples e unificados para aplicações distribuídas através de um modelo baseado

Leia mais

Autenticação e Autorização

Autenticação e Autorização Autenticação e Autorização Introdução A segurança em aplicações corporativas está relacionada a diversos aspectos, tais como: autenticação, autorização e auditoria. A autenticação identifica quem acessa

Leia mais

Programação WEB (JSP + Banco Dados) Eng. Computação Prof. Rodrigo Rocha http://www.materialdeaula.com.br

Programação WEB (JSP + Banco Dados) Eng. Computação Prof. Rodrigo Rocha http://www.materialdeaula.com.br Programação WEB (JSP + Banco Dados) Eng. Computação Prof. Rodrigo Rocha http://www.materialdeaula.com.br JSP (Java Server Pages) - JavaServer Pages (JSP) - Tecnologia de programação serverside - Permite

Leia mais

Servlets e Applets, funcionamento e comparativo.

Servlets e Applets, funcionamento e comparativo. Servlets e Applets, funcionamento e comparativo. Airon Rabel Teixeira Rua Guarapuava Joinville SC airon@ymail.com Resumo: Este artigo explica de maneira breve o funcionamento de servlets e applets, mostrando

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

Desenvolvimento de Aplicações. Desenvolvimento de Aplicações. Desenvolvimento de Aplicações. Dificuldades no uso de Bancos de Dados

Desenvolvimento de Aplicações. Desenvolvimento de Aplicações. Desenvolvimento de Aplicações. Dificuldades no uso de Bancos de Dados Desenvolvimento de Aplicações Desenvolvimento de Aplicações Dificuldades no uso de Bancos de Dados Um leigo não sabe o que é e como funciona um BD Mesmo um profissional da área de informática pode ter

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

2 Conceitos relativos a Web services e sua composição

2 Conceitos relativos a Web services e sua composição 15 2 Conceitos relativos a Web services e sua composição A necessidade de flexibilidade na arquitetura das aplicações levou ao modelo orientado a objetos, onde os processos de negócios podem ser representados

Leia mais

Java na Web. Aplicações Web

Java na Web. Aplicações Web Montando o ambiente com HSQLDB JSP com um conteúdo de banco de dados: JDBC Integre JSPs com servlets aplicando o Modelo-Visualização- Controle Montando o ambiente com HSQLDB Faça a transferênci da página

Leia mais

JDBC Acessando Banco de Dados

JDBC Acessando Banco de Dados Acessando Banco de Dados Objetivos Entender o que são Drivers. Diferenciar ODBC, JDBC e DRIVERMANAGER. Desenvolver uma aplicação Java para conexão com Banco de Dados. Criar um objeto a partir da classe

Leia mais

Tecnologias para Web Design

Tecnologias para Web Design Tecnologias para Web Design Introdução Conceitos básicos World Wide Web (Web) Ampla rede mundial de recursos de informação e serviços Aplicação do modelo de hipertexto na Web Site Um conjunto de informações

Leia mais

Fundamentos de Servlets. Conceitos e ciclo de vida Classes e Interfaces da API Exemplos de Servlets

Fundamentos de Servlets. Conceitos e ciclo de vida Classes e Interfaces da API Exemplos de Servlets Fundamentos de Servlets Conceitos e ciclo de vida Classes e Interfaces da API Exemplos de Servlets Common Gateway Interface Aplicações Geração de documentos com conteúdo dinâmico Produzir resultados em

Leia mais

GLOSSÁRIO. ActiveX Controls. É essencialmente uma interface usada para entrada e saída de dados para uma aplicação.

GLOSSÁRIO. ActiveX Controls. É essencialmente uma interface usada para entrada e saída de dados para uma aplicação. GLOSSÁRIO Este glossário contém termos e siglas utilizados para Internet. Este material foi compilado de trabalhos publicados por Plewe (1998), Enzer (2000) e outros manuais e referências localizadas na

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

Transaction Scripts: Uma Forma mais Simples de Organizar Lógica de Domínio

Transaction Scripts: Uma Forma mais Simples de Organizar Lógica de Domínio Roberto Perillo (jrcperillo@yahoo.com.br) é bacharel em Ciência da Computação e está atualmente cursando mestrado no ITA, onde já concluiu o curso de especialização em Engenharia de Software. Trabalha

Leia mais

Laboratórios Virtuais

Laboratórios Virtuais Laboratórios Virtuais Rafael Santos 1 Resumo O que são laboratórios virtuais e para que servem? Por que implementar laboratórios virtuais? Visita técnica à Johns Hopkins University. O NVO (US National

Leia mais

J550. Helder da Rocha (helder@acm.org) www.argonavis.com.br

J550. Helder da Rocha (helder@acm.org) www.argonavis.com.br J550 Helder da Rocha (helder@acm.org) www.argonavis.com.br 1 O que são Filtros Um filtro éum componente Web que reside no servidor Intercepta as requisições e respostas no seu caminho até o servlet e de

Leia mais

Linux - Servidor de Redes

Linux - Servidor de Redes Linux - Servidor de Redes Servidor Web Apache Prof. Roberto Amaral WWW Breve histórico Início 1989 CERN (Centro Europeu de Pesquisas Nucleares) precisava de um meio de viabilizar o trabalho cooperativo

Leia mais

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

SCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br SCE-557 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

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

PROGRAMAÇÃO SERVIDOR WEBSERVICES EM SISTEMAS WEB. Prof. Dr. Daniel Caetano 2012-1 PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB WEBSERVICES Prof. Dr. Daniel Caetano 2012-1 Objetivos Compreender o que é um WebService e sua utilidade Compreender a lógica de funcionamento de um WebService Capacitar

Leia mais

FACULDADE DE ADMINISTRAÇÃO E NEGÓCIOS DE SERGIPE - FANESE CURSO SUPERIOR DE TECNOLOGIA em Gestão da Tecnologia da Informação

FACULDADE DE ADMINISTRAÇÃO E NEGÓCIOS DE SERGIPE - FANESE CURSO SUPERIOR DE TECNOLOGIA em Gestão da Tecnologia da Informação FACULDADE DE ADMINISTRAÇÃO E NEGÓCIOS DE SERGIPE - FANESE CURSO SUPERIOR DE TECNOLOGIA em Gestão da Tecnologia da Informação 1 Ruironaldi dos Santos Cruz ARTIGO ARQUITETURA ORIENTADA A SERVIÇO SOA SERVICE

Leia mais

WebUML: Uma Ferramenta Colaborativa de Apoio ao Projeto e Análise de Sistemas Descritos em Classes UML

WebUML: Uma Ferramenta Colaborativa de Apoio ao Projeto e Análise de Sistemas Descritos em Classes UML Carlos Henrique Pereira WebUML: Uma Ferramenta Colaborativa de Apoio ao Projeto e Análise de Sistemas Descritos em Classes UML Florianópolis - SC 2007 / 2 Resumo O objetivo deste trabalho é especificar

Leia mais

A autoria - II. A autoria - II. Tecnologias básicas da Web. A autoria - II. 2001 Wilson de Pádua Paula Filho. Tópicos:

A autoria - II. A autoria - II. Tecnologias básicas da Web. A autoria - II. 2001 Wilson de Pádua Paula Filho. Tópicos: A autoria - II Tópicos: A autoria - II World Wide Web hipermídia na Internet: sítios Web: páginas de hipertexto; material multimídia; aplicativos Web: muitos tipos de tecnologias de software: scripts,

Leia mais

Laboratório EJB e J2EE Uma aplicação completa

Laboratório EJB e J2EE Uma aplicação completa J530 - Enterprise JavaBeans Laboratório EJB e J2EE Uma aplicação completa Helder da Rocha (helder@acm.org) argonavis.com.br 1 Objetivos O objetivo deste módulo é construir e implantar uma aplicação J2EE

Leia mais

Servlets, JSPs e Java Beans

Servlets, JSPs e Java Beans Servlets, JSPs e Java Beans Prof. Pasteur Ottoni de Miranda Junior PUC Minas Disponível em www.pasteurjr.blogspot.com 1-Servlets 1.1 O que são Servlets são classes Java executadas em servidores web. Servem

Leia mais

Acesso a Bancos de Dados em Java (JDBC)

Acesso a Bancos de Dados em Java (JDBC) Acesso a Bancos de Dados em Java (JDBC) Jomi Fred Hübner Universidade Regional de Blumenau Departamento de Sistemas e Computação Roteiro Introdução Objetivo da JDBC Vantagens Visão geral do acesso a SGBDs

Leia mais

Padrões Arquiteturais e de Integração - Parte 1

Padrões Arquiteturais e de Integração - Parte 1 1 / 58 - Parte 1 Erick Nilsen Pereira de Souza T017 - Arquitetura e Design de Aplicações Análise e Desenvolvimento de Sistemas Universidade de Fortaleza - UNIFOR 11 de fevereiro de 2015 2 / 58 Agenda Tópicos

Leia mais

Unidade 14: Web Services Prof. Daniel Caetano

Unidade 14: Web Services Prof. Daniel Caetano Programação Servidor em Sistemas Web 1 Unidade 14: Web Services Prof. Daniel Caetano INTRODUÇÃO Na maior parte deste curso foram estudados serviços desenvolvidos com o uso de tecnologias Servlet. Entretato,

Leia mais

Conteúdo Dinâmico. Introdução. Interação Browser x Servidor Web. Interação Browser x Servidor Web

Conteúdo Dinâmico. Introdução. Interação Browser x Servidor Web. Interação Browser x Servidor Web Introdução Formulários rios & Conteúdo Dinâmico Mário Antonio Meireles Teixeira Dept o. de Informática - UFMA A Web surgiu inicialmente como uma nova forma de comunicação de informações, fazendo uso de

Leia mais

JSP - JavaServer Pages

JSP - JavaServer Pages JSP - JavaServer Pages 1 Sumário O que é o JSP? Comparação com ASP, Servlets, e Javascript Disponibilidade Um exemplo simples Mais sobre Sintaxe Um pouco de JavaBeans Um exemplo mais complexo 2 O que são

Leia mais

Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br)

Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) Extensão de servidor escrita em Java Podem ser usados para estender qualquer tipo de aplicação do modelo requisição- resposta Todo servlet implementa a

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

Componentes para Computação Distribuída

Componentes para Computação Distribuída Componentes para Computação Distribuída Conceitos Foi a partir do fenômeno da Internet (WWW), no início dos anos noventa, que a computação distribuída passou a ter relevância definitiva, a ponto de a Internet

Leia mais

INFRAESTRUTURA DE TI E TECNOLOGIAS EMERGENTES

INFRAESTRUTURA DE TI E TECNOLOGIAS EMERGENTES Sistema de Informação e Tecnologia FEQ 0411 Prof Luciel Henrique de Oliveira luciel@uol.com.br Capítulo 5 INFRAESTRUTURA DE TI E TECNOLOGIAS EMERGENTES PRADO, Edmir P.V.; SOUZA, Cesar A. de. (org). Fundamentos

Leia mais

Padrões Arquiteturais. Sistemas Distribuídos: Broker

Padrões Arquiteturais. Sistemas Distribuídos: Broker Padrões Arquiteturais Sistemas Distribuídos: Broker Sistemas Distribuídos Tendências: Sistemas Comp. com múltiplas CPUs Redes locais com centenas de hospedeiros Benefícios Economia Desempenho e escalabilidade

Leia mais

Java Server Pages. Arquitectura de uma aplicação distribuída em Internet. Figura 1 Modelo 2

Java Server Pages. Arquitectura de uma aplicação distribuída em Internet. Figura 1 Modelo 2 Java Server Pages Arquitectura de uma aplicação distribuída em Internet Figura 1 Modelo 2 A implementação desta arquitectura, com um controlador que direcciona a execução de s, de Servlets e de JavaBeans,

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Introdução ao Paradigma OO

Leia mais

Tecnologias Web. Java Enterprise Edition

Tecnologias Web. Java Enterprise Edition Tecnologias Web Java Enterprise Edition Cristiano Lehrer, M.Sc. Introdução Java Enterprise Edition (JEE): Plataforma de tecnologias para o desenvolvimento de aplicações corporativas distribuídas. É uma

Leia mais

JDBC. Java DataBase Connectivity

JDBC. Java DataBase Connectivity JDBC Java DataBase Connectivity JDBC??? Uma API que permite o acesso a virtualmente qualquer fonte de dado tabular a partir de um programa escrito em Java O que é uma uma fonte de dados tabular? acesso

Leia mais

CORBA. Common Object Request Broker Architecture. Unicamp. Centro de Computação Rubens Queiroz de Almeida queiroz@unicamp.br

CORBA. Common Object Request Broker Architecture. Unicamp. Centro de Computação Rubens Queiroz de Almeida queiroz@unicamp.br CORBA Common Object Request Broker Architecture Unicamp Centro de Computação Rubens Queiroz de Almeida queiroz@unicamp.br Objetivos Apresentação Tecnologia CORBA Conceitos Básicos e Terminologia Considerações

Leia mais

PHP Programando com Orientação a Objetos

PHP Programando com Orientação a Objetos PHP Programando com Orientação a Objetos 2 a edição Pablo Dall Oglio Novatec Sumário Sobre o autor... 13 Agradecimentos... 14 Nota do autor... 16 Organização do livro... 18 Capítulo 1 Introdução ao PHP...

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

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