Você está na página 1de 28

Lio 1

Introduo Programao WEB


Programao WEB 1

Objetivos
Ao final desta lio, o estudante ser capaz de:

Descrever como funciona a WEB Definir a arquitetura do tipo Cliente-Servidor Entender sobre o protocolo HTTP Definir o bsico sobre a arquitetura Java EE Saber o que so Servlets e Java Server Pages

Programao WEB

Porque migrar para a WEB?

Ambiente de tecnolo ia neutra !acilidade de distribuio e atualizao

Programao WEB

Arquitetura

!iente"#ervidor

Cliente pesado e cliente ma ro Arquitetura de cliente-servidor de uma perspectiva "E#


Aplica$es de "E# usam clientes ma ros %ro rama de cliente, um nave ador neste caso, & s' uma interface que o usurio usa para e(ecutar tarefas )udo mais reside no servidor

Programao WEB

Arquitetura

!iente"#ervidor

Programao WEB

$%&L

*in ua em de marcao de +iperte(to ,Hypertext Markup LanguageCon.unto de instru$es para o nave ador "E# que define como apresentar o conte/do ao usurio %adro aberto atualizado pelo World Wide Web Consortium ,"0C1ave adores con+ecem 2)3*

Programao WEB

$%%P

%rotocolo de )ransfer4ncia de 2iperte(to ,Hypertext Tranfer Protocol5m protocolo de rede com caracter6sticas espec6ficas para "E# 7oda sobre duas outras camadas de protocolo: )C% e 8%

Programao WEB

$%%P

5sa uma seq94ncia de 7equisio : 7esposta 3ensa ens de requisio e resposta

Programao WEB

'equisi(es $%%P

7equisi$es do cliente para o servidor cont4m:


5m cabeal+o inicial ;ero ou mais cabeal+os adicionais 5m lin+a em branco < corpo de mensa em ,opcional-

Programao WEB

'equisi(es $%%P) *E%

3&todo 2))% simples 5sadas para pedir um recurso particular do servidor 5sadas para enviar dados para o servidor

Programao WEB

10

*E%) +'L E,emp!o


http://jedi-master.dev.java.net/servlets/NewsItemView? newsItemID=2359&filter=tr e

8tens antes da marca de interro ao ,=- & a 57* ori inal da requisio http://jedi-master.dev.java.net/servlets/NewsItemView %ar>metros ou dados enviados para o servidor:

Par-metros so codificados como pares de nome e valor !ormato: nome?valor 3ais de um con.unto de par>metros, sero separados por um s6mbolo de @

newsItemID=2359&filter=tr e

Programao WEB

11

'equisi(es $%%P) PO#%

%ro.etado para que o nave ador possa fazer:


7equisi$es comple(as para o servidor 7equisi$es simples que requerem carre amento de arquivos para o servidor

Esconde os dados dentro do corpo da mensa em que & enviada para o servidor

Programao WEB

12

'esposta $%%P

Cont&m o cabeal+o e o corpo de mensa em Con.unto diferente de cabeal+os )ipo 383E-tApe

Programao WEB

13

P.ginas /in-mi0as ou Est.ti0as

Conte/do

Conte/do esttico no muda 3udanas din>micas de conte/do de acordo com a entrada do usurio

% inas din>micas t4m mais fle(ibilidade e utilidade que estticas

Programao WEB

14

P.ginas /in-mi0as ou Est.ti0as

Al uns cenrios onde conte/do din>mico & a /nica coisa que caber a conta:

A p ina "E# est baseada nos dados submetidos pelo usurio <s dados mudam freq9entemente A p ina "E# usa informao de bancos de dados corporativo ou de outras fontes

Programao WEB

15

1ava Enterprise Edition 21ava EE3

Criada para o desenvolvimento de aplica$es corporativas, baseada em componente 5sa um 3odelo de Aplicao de 3ulti-Camadas Distribu6das ou multi tier

Programao WEB

16

1ava EE) E,emp!o de ap!i0ao mu!ti"0amada

5ma aplicao "E# tem:


A camada de apresentao ,nave adorA camada l' ica de ne 'cio ,aplicao que reside no servidor "E#A camada de armazenamento ,o banco de dados com os dados da aplicao-

As camadas de uma aplicao "E# esto distintamente separadas

Programao WEB

17

1ava EE 4iso *era! da amada WEB

Camada "E#

5ma das camadas na plataforma BCEE Camada que intera e com o nave ador para criar conte/do din>mico )ecnolo ias Bava dentro desta camada:

Servlets BavaServer %a es ,BS%-

Programao WEB

18

1ava EE 4iso *era! da amada WEB

Programao WEB

19

amada WEB) #erv!ets

7esposta primria do Bava para adicionar funcionalidade aos servidores *er dados contidos nas requisi$es passadas ao servidor e erar uma resposta din>mica %rover uma verso especial que implementa caracter6sticas espec6ficas 2))%

Programao WEB

20

#erv!ets /esvantagem

Servlets so classes na lin ua em Bava %roduzem sa6da imprimindo caracter como cadeias no flu(o de sa6da, neste caso a resposta 2))%

Programao WEB

21

amada WEB) 1ava#erver Pages

Aspectos e(atamente como 2)3*, s' tem acesso a todas as capacidades din>micas de servlets com o uso de roteiros e lin ua ens de e(presso <s pro.etistas podem concentrar-se em puro desen+o 2)3* e simplesmente dei(ar marcadores para desenvolvedores preenc+erem com conte/do din>mico

Programao WEB

22

ont5iner

Programao WEB

23

ont5iner
Suporte de comunica$es Der4ncia de ciclo de vida Suporte a multitarefa Se urana declarativa Suporte a BS%

Programao WEB

24

Estrutura B.si0a de uma ap!i0ao 1ava WEB

Programao WEB

25

Estrutura B.si0a de uma ap!i0ao 1ava WEB

A pasta de alto n6vel 1E< precisa ser nomeada 7aiz de Documento Fualquer outra pasta pode ser criada dentro desta estrutura de diret'rio *etras mai/sculas na pasta "E#-81! & intencional )odos os conte/dos da pasta "E#-81! no pode ser visto do nave ador DEGE +aver um arquivo HebI(ml dentro da pasta "E#-81!

Programao WEB

26

#um.rio

%orque mi rar para a "E#= Arquitetura Cliente-Servidor 2)3* e 2))% % inas Din>micas ou Estticas Java Enterprise Edition Estrutura bsica de uma aplicao "E#

Programao WEB

27

Par0eiros

Os seguintes par0eiros tornaram 1E/I L6ngua Portuguesa)

TM

poss6ve! em

Programao WEB

28