Introdução à Programação Web – 01 (Servlets e JSP)

Post com propósitos educacionais(são temas abordados em uma matéria na minha graduação) e de possíveis ‘lembretes’ para termos/tecnologias/definições de fácil compreensão, porém que acho-as essenciais para base de conhecimento da tecnologia Java EE.

Trecho retirado do livro de Kurniawan:

“Quando você clica ou digita em um URL na caixa ‘location’ ou ‘address’ do seu browser, acontecem as seguintes coisas:

– O browser cliente estabelecerá um conexão TCP/IP(protocolo de controle de transmissão/protocolo de Internet) com o servidor.

– O browser envia uma solicitação ao servidor.

– O servidor envia uma resposta ao cliente(browser).

– O servidor fecha a conexão.

1)      HTTP(Protocolo de transferência de hipertexto)

– É o protocolo que permite aos servidores web e browsers trocar dados pela web.

– É um protocolo de solicitação e resposta. Suporta apenas uma requisição por conexão. O cliente conecta ao servidor para recuperar um arquivo e depois desconecta.

– Em HTTP é sempre o cliente quem inicia uma transação, estabelecendo uma conexão e enviando uma solicitação HTTP.

1.1) Uma solicitação HTTP consiste em 3 componentes:

– Método – URI – Protocolo/Versão

– Cabeçalho da solicitação

– Corpo da solicitação/entidade

2)      Java EE 6 e suas APIs/Serviços

Fiz um post no blog do GUJavaSC referente a esta questão, veja-o.

3)      Servlet Container

– Alguns servidores não suportam as especificações do Java EE por completo;

– Esses servidores são chamados de Servlet Container;

– Possuem como principais funções:

– Gerenciar o ciclo de vida do Servlet;

– Mapear URLs – Servlets;

– Assegurar os direitos corretos à URL acessada

– Servlet Container oficial: Tomcat.

4)      Servlet

– Tecnologia Java que é executada no Web Container;

– Componente gerenciado pelo Web Container capaz de responder a requisições HTTP;

– Assim como os CGIs, os Servlets podem reconhecer requisições HTTP,processar os dados recebidos e gerar respostas para o navegador Web;

– Servlets são executados como uma thread da JVM;

– Cada requisição é processada concorrentemente usando-se uma thread por requisição, já no caso do CGI é aberto um processo no sistema operacional para cada requisição.

– Vantagens dos Servlets comparando-os com CGI:

– Mais rápido no processamento de requisições;

– são escaláveis;

– robustos e orientados a objetos;

– suportam autenticação;

– suportam outros serviços como segurança e tratamento de erros.

Nas requisições aos Servlets, pode ser enviado parâmetros ao quais são pares de nome=valor. Parâmetros podem ser passados na requisição de duas formas. “Se o método for GET, os parâmetros são passados em uma única linha no query string, que estende a URL após um “?”. E, se o método for POST, os parâmetros são passados como um stream no corpo da mensagem

5)      Tecnologia JSP

A tecnologia JSP é uma extensão da tecnologia Servlet.

– páginas HTML contendo código Java;

– Executa como um Servlet no servidor;

– Tem como foco a camada de apresentação;

Ciclo de vida de uma JSP

Ciclo de vida JSP

Sabe-se que atualmente existe vários frameworks/APIs de melhores desempenho e de fácil compreensão ao quais são superiores a tais itens que estou citando neste post. Porém, gostaria de enfatizar que o interesse desse meu post é algo educativo (pois são temas abordados na matéria que estou matriculado na graduação) e tenho o intuito também de fazê-lo como referência em possíveis esquecimentos das funcionalidades de tais tecnologias.

Até a próxima.

 

Referências:

Kurniawan, Budi. Java para a Web com Servlets, JSP e EJB. Editora Ciência Moderna Ltda. 2002.

Material de aula “Programação para web”. Vinicius Ramos – Unisul

http://www.exforsys.com/images/vbnet/sourecode/J2EE/4-JSP%20Basics/jsp-compilation.jpg – Acesso em 21/04/14

Anúncios

Obrigado pelo comentário.

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s