Você está na página 1de 19

Linguagem de programao 5

Prof. Takeshi Waku

Agenda Semestral
07/08 Viso geral Web, HTML; 14/08 Evoluo do desenvolvimento de solues (stand-alone, applets, client-server e trs camadas); 21/08 Viso geral do desenvolvimento em trs camadas; 04/09 Viso geral dos servidores de aplicao; 11/09 Java na Web; 18/09 Segurana; 25/09 Desempenho; 02/10 Usando Java Server Pages (JSP); 09/10 Servlets; 16/10 Diferenas entre JSP e Servlets;
Prof. Takeshi Waku 2

Agenda Semestral
23/10 Acessando dados em formato texto e em bancos de dados com JSP e Servlets; 30/10 Interface interativa e intuitiva; 06/11 Navegabilidade; 13/11 Desenvolvimento de um Programa ou Aplicativo em Java Enterprise Edition (JSP e Servlets). 20/11 Dia conscincia negra no h aula. 27/11 p2 4/12 vista 11/12 exame

Prof. Takeshi Waku

Bibliografia
Web
Use a cabea! JSP e Servlets

Sobre Java e melhores prticas


Refactoring, Martin Fowler Effective Java - 2nd edition, Joshua Bloch Design Patterns, Erich Gamma et al

Para iniciantes na plataforma Java:


Java - Como programar, de Harvey M. Deitel Use a cabea! - Java, de Bert Bates e Kathy Sierra
Prof. Takeshi Waku 4

HTTP (HyperText Transfer Protocol)


Permitir uma transferncia de ficheiros (essencialmente no formato HTML) localizados graas a uma cadeia de caracteres chamada URL entre um navegador (o cliente) e um servidor Web (chamado de resto httpd nas mquinas UNIX).

Prof. Takeshi Waku

URL
Uma URL (de Uniform Resource Locator), em portugus Localizador Uniforme de Recursos, o endereo de um recurso (um arquivo, uma impressora etc.), disponvel em uma rede; seja a Internet, ou uma rede corporativa, uma intranet. Uma URL tem a seguinte estrutura: protocolo://mquina/caminho/recurso
Prof. Takeshi Waku 6

Prof. Takeshi Waku

Pedido HTTP
Uma linha de pedido : A linha compreende trs elementos que devem ser separados por um espao:
O mtodo O URL A verso do protocolo utilizado pelo cliente (geralmente HTTP/1.0)

GET http://pt.kioskea.net HTTP/1.0

Prof. Takeshi Waku

Os campos de cabealho do pedido : trata-se de um conjunto de linhas facultativas que permitem dar informaes suplementares sobre o pedido e/ou o cliente (Navegador, sistema de explorao,). Cada um destas linhas composta por um nome que qualifica o tipo de cabealho, seguido de dois pontos (:) e do valor do cabealho O corpo do pedido : um conjunto de linhas opcionais que devem ser separadas das linhas precedentes por uma linha vazia e permitindo por exemplo um envio de dados por um comando POST aquando do envio de dados ao servidor por um formulrio
Prof. Takeshi Waku 9

Exemplo
GET http://pt.kioskea.net HTTP/1.0 Accept : text/html If-Modified-Since : Saturday, 15-January-2000 14:37:11 GMT User-Agent : Mozilla/4.0 (compatible; MSIE 5.0; Windows 95)

Prof. Takeshi Waku

10

Comandos
GET Solicita algum recurso como um arquivo ou um script CGI (qualquer dado que estiver identificado pelo URI) por meio do protocolo HTTP. Por exemplo, segue abaixo uma comunicao entre um cliente e um servidor HTTP. O servidor possui a URL www.exemplo.com, porta 80. HEAD Variao do GET em que o recurso no retornado. usado para obter metainformaes por meio do cabealho da resposta, sem ter que recuperar todo o contedo.

Prof. Takeshi Waku

11

Comandos
POST Envia dados para serem processados (por exemplo, dados de um formulrio HTML) para o recurso especificado. Os dados so includos no corpo do comando. Sua utilizao em uma requisio ocorre quando necessrio enviar dados ao servidor para serem processados, geralmente por um programa script identificado no Request-URI. Uma requisio por meio desse mtodo sempre requer que as informaes submetidas sejam includas no corpo da mensagem e formatadas como uma query string, alm de conter cabealhos adicionais especificando seu tamanho (Content-Lenght) e seu formato (Content-Type). Por isso, esse mtodo oferece uma maior segurana em relao aos dados transferidos, ao contrrio do mtodo GET que os dados so anexados a URL, ficando visveis ao usurio.14 Por exemplo:

Prof. Takeshi Waku

12

Comandos
PUT Envia certo recurso. DELETE Exclui o recurso. TRACE Ecoa o pedido, de maneira que o cliente possa saber o que os servidores intermedirios esto mudando em seu pedido. OPTIONS Recupera os mtodos HTTP que o servidor aceita. CONNECT Serve para uso com um proxy que possa se tornar um tnel SSL (um tnel pode ser
Prof. Takeshi Waku 13

usado, por exemplo, para criar uma conexo segura).

Rubricas

Prof. Takeshi Waku

14

Resposta HTTP
Uma linha de estatuto : uma linha que precisa a verso do protocolo utilizado e o estado do tratamento do pedido atravs de um cdigo e de um texto explicativo. A linha compreende trs elementos que devem ser separados por um espao:
A verso do protocolo utilizado O cdigo de estatuto A significado do cdigo

Os campos de rubrica da resposta : trata-se de um conjunto de linhas facultativas que permitem dar informaes suplementares sobre a resposta e/ou o servidor. Cada um destas linhas composta de um nome que qualifica o tipo de rubrica, seguido de dois pontos (:) e do valor da rubrica O corpo da resposta : contem o documento pedido
Prof. Takeshi Waku 15

Exemplo
HTTP/1.0 200 OK Date : Sat, 15 Jan 2000 14:37:12 GMT Server : Microsoft-IIS/2.0 Content-Type : text/HTML Content-Length : 1245 Last-Modified : Fri, 14 Jan 2000 08:25:13 GMT

Prof. Takeshi Waku

16

CORPO DA RESPOSTA

Prof. Takeshi Waku

17

Os cdigos de resposta

Prof. Takeshi Waku

18

Prof. Takeshi Waku

19

Você também pode gostar