23
Tecnologias para Tecnologias para Internet Internet Thyago Maia Tavares de Thyago Maia Tavares de Farias Farias Aula 14 Aula 14

Tecnologias para Internet - Aula 14

Embed Size (px)

DESCRIPTION

Slides referentes a 14ª aula da disciplina de Tecnologias para Internet, realizada no dia 09/04/2011.

Citation preview

Page 1: Tecnologias para Internet - Aula 14

Tecnologias para Tecnologias para InternetInternet

Thyago Maia Tavares de Thyago Maia Tavares de FariasFarias

Aula 14Aula 14

Page 2: Tecnologias para Internet - Aula 14

SumárioSumário

Camada LógicaCamada Lógica Introdução aos ServletsIntrodução aos Servlets

Page 3: Tecnologias para Internet - Aula 14

Introdução aos ServletsIntrodução aos Servlets

Tecnologia que permite o desenvolvimento Tecnologia que permite o desenvolvimento de sistemas Web e páginas Web dinâmicas;de sistemas Web e páginas Web dinâmicas;

Componente pertencente a camada lógica Componente pertencente a camada lógica de uma arquitetura de sistema Web;de uma arquitetura de sistema Web;

Tratam-se de classes Java que processam Tratam-se de classes Java que processam requisições e respostas HTTP;requisições e respostas HTTP;

Também considerado um extensor de Também considerado um extensor de servidor, ampliando suas funcionalidades; servidor, ampliando suas funcionalidades;

Page 4: Tecnologias para Internet - Aula 14

Introdução aos ServletsIntrodução aos Servlets

Vantagens dos Servlets:Vantagens dos Servlets: Portabilidade: Aplicações desenvolvidas podem Portabilidade: Aplicações desenvolvidas podem

ser implantadas em diversas plataformas;ser implantadas em diversas plataformas; Facilidade de programação: Segue o Facilidade de programação: Segue o

paradigma de programação orientada a paradigma de programação orientada a objetos; Implementação similar a uma objetos; Implementação similar a uma aplicação Java comum;aplicação Java comum;

Flexibilidade: Utiliza a linguagem Java, Flexibilidade: Utiliza a linguagem Java, bastante difundida, com várias bibliotecas, bastante difundida, com várias bibliotecas, códigos prontos e com documentação e códigos prontos e com documentação e comunidades de desenvolvimento abundantes;comunidades de desenvolvimento abundantes;

Page 5: Tecnologias para Internet - Aula 14

Introdução aos ServletsIntrodução aos Servlets

Vantagens dos Servlets:Vantagens dos Servlets: Escalabilidade: Possibilidade de Escalabilidade: Possibilidade de

distribuir a carga de processamento de distribuir a carga de processamento de aplicações em diversos servidores;aplicações em diversos servidores;

Eficiência: Servlets carregados por um Eficiência: Servlets carregados por um servidor persistem em sua memória até servidor persistem em sua memória até que sejam finalizados;que sejam finalizados;

Page 6: Tecnologias para Internet - Aula 14

Arquitetura de Aplicação Arquitetura de Aplicação ServletServlet

Um Servlet é uma classe Java que pode ser Um Servlet é uma classe Java que pode ser carregada e executada dinamicamente por carregada e executada dinamicamente por um servidor especial, chamado de Servlet um servidor especial, chamado de Servlet Container ou Servidor de Aplicação Java;Container ou Servidor de Aplicação Java;

Servlets interagem com clientes através do Servlets interagem com clientes através do modelo requisição-resposta do protocolo modelo requisição-resposta do protocolo HTTP;HTTP;

Servlets também podem interagir com Servlets também podem interagir com clientes através de outros protocolos, clientes através de outros protocolos, como HTTPS e SSL;como HTTPS e SSL;

Page 7: Tecnologias para Internet - Aula 14

Arquitetura de Aplicação Arquitetura de Aplicação ServletServlet

Navegador

(Cliente)

ServletContaine

r(Servidor

)Servlet(Classe Java)

REQUISIÇÃO

RESPOSTA

Page 8: Tecnologias para Internet - Aula 14

Servlet ContainersServlet Containers

Os Servlets Contaneirs mais Os Servlets Contaneirs mais populares da atualidade:populares da atualidade: Apache Tomcat;Apache Tomcat; GlassFish;GlassFish;

Page 9: Tecnologias para Internet - Aula 14

Servlet ContainersServlet Containers

Apache TomcatApache Tomcat

Originalmente desenvolvido pela Sun Originalmente desenvolvido pela Sun Microsystems;Microsystems;

Administrado pela Apache Foundation;Administrado pela Apache Foundation; Considerado o servidor de aplicações Java Considerado o servidor de aplicações Java

oficial;oficial; Servidor Web que pode ser usado para trabalhar Servidor Web que pode ser usado para trabalhar

com Servlets e arquivos estáticos (HTML, com Servlets e arquivos estáticos (HTML, imagens, etc.);imagens, etc.);

Page 10: Tecnologias para Internet - Aula 14

Servlet ContainersServlet Containers

GlassFishGlassFish

Desenvolvido pela Sun Microsystems;Desenvolvido pela Sun Microsystems; Versão open source do servidor Sun Java Versão open source do servidor Sun Java

System Application Server;System Application Server; É um dos poucos servidores que possui total É um dos poucos servidores que possui total

suporte às novas especificações Web Java;suporte às novas especificações Web Java; Pode ser usado para trabalhar com Servlets e Pode ser usado para trabalhar com Servlets e

arquivos estáticos (HTML, imagens, etc.);arquivos estáticos (HTML, imagens, etc.);

Page 11: Tecnologias para Internet - Aula 14

O que precisaremos para O que precisaremos para criar e executar Servlets?criar e executar Servlets? Adotaremos o NetBeans IDE:Adotaremos o NetBeans IDE:

NetBeans IDE 6.9.1NetBeans IDE 6.9.1 http://download.netbeans.org/netbeans/6.9.1/http://download.netbeans.org/netbeans/6.9.1/

final/bundles/netbeans-6.9.1-ml-windows.exefinal/bundles/netbeans-6.9.1-ml-windows.exe Esta versão já vem com os Servlet Containers Esta versão já vem com os Servlet Containers

GlassFish e Tomcat;GlassFish e Tomcat; Não é necessária qualquer configuração de Não é necessária qualquer configuração de

servidor;servidor; Bibliotecas Java utilizadas, parâmetros de função Bibliotecas Java utilizadas, parâmetros de função

necessários, além de outros códigos úteis para a necessários, além de outros códigos úteis para a produção de Servlets já são automaticamente produção de Servlets já são automaticamente inseridos em nossos projetos;inseridos em nossos projetos;

Page 12: Tecnologias para Internet - Aula 14

Meu primeiro ServletMeu primeiro Servlet

Execute o NetBeans IDE;Execute o NetBeans IDE; Clique na opção de menu Clique na opção de menu Arquivo / Arquivo /

NovoNovo projeto... (Teclas de atalho: projeto... (Teclas de atalho: Ctrl Ctrl + Shift + N+ Shift + N););

Na janela apresentada em seguida, Na janela apresentada em seguida, em em CategoriasCategorias, selecione a opção , selecione a opção Java Java WebWeb; Em ; Em ProjetosProjetos, selecione a opção , selecione a opção Aplicação WebAplicação Web;;

Clique sobre o botão Clique sobre o botão PróximoPróximo;;

Page 13: Tecnologias para Internet - Aula 14

Meu primeiro ServletMeu primeiro Servlet

Page 14: Tecnologias para Internet - Aula 14

Meu primeiro ServletMeu primeiro Servlet

Na próxima tela, em Na próxima tela, em Nome do Nome do projetoprojeto, digite o nome da sua , digite o nome da sua aplicação Web Java (sem caracteres aplicação Web Java (sem caracteres especiais e espaços);especiais e espaços);

Mantenha os demais parâmetros Mantenha os demais parâmetros padrão de projeto;padrão de projeto;

Clique em Clique em PróximoPróximo; ;

Page 15: Tecnologias para Internet - Aula 14

Meu primeiro ServletMeu primeiro Servlet

Page 16: Tecnologias para Internet - Aula 14

Meu primeiro ServletMeu primeiro Servlet

Agora, na próxima tela, definiremos Agora, na próxima tela, definiremos o Server Container a ser utilizado o Server Container a ser utilizado pela aplicação. Em pela aplicação. Em ServidorServidor, , selecione selecione Domínio do Personal Domínio do Personal GlassFishGlassFish;;

Mantenha os demais parâmetros Mantenha os demais parâmetros padrão de projeto;padrão de projeto;

Clique em Clique em FinalizarFinalizar;;

Page 17: Tecnologias para Internet - Aula 14

Meu primeiro ServletMeu primeiro Servlet

Page 18: Tecnologias para Internet - Aula 14

Meu primeiro ServletMeu primeiro Servlet

No painel No painel ProjetoProjeto, localizado ao lado , localizado ao lado da área de edição de código, expanda a da área de edição de código, expanda a pasta pasta Pacotes de código-fontePacotes de código-fonte;;

Clique com o botão direito do mouse Clique com o botão direito do mouse sobre o pacote sobre o pacote <pacote padrão><pacote padrão>;;

Selecione a opção de menu Selecione a opção de menu Novo / Novo / ServletServlet;;

Na próxima tela, defina um nome para Na próxima tela, defina um nome para seu Servlet e clique em seu Servlet e clique em FinalizarFinalizar;;

Page 19: Tecnologias para Internet - Aula 14

Meu primeiro ServletMeu primeiro Servlet

Page 20: Tecnologias para Internet - Aula 14

Meu primeiro Servlet Meu primeiro Servlet

Page 21: Tecnologias para Internet - Aula 14

Meu primeiro ServletMeu primeiro Servlet

Um código-fonte será gerado Um código-fonte será gerado automaticamente, já com chamada a automaticamente, já com chamada a bibliotecas Java para tratamento de bibliotecas Java para tratamento de I/O, Servlets, e pedidos/respostas I/O, Servlets, e pedidos/respostas HTTP, além de uma classe Java que HTTP, além de uma classe Java que já possui funções que tratam já possui funções que tratam requisições e repostas HTTP;requisições e repostas HTTP;

Iremos preparar nosso próprio código Iremos preparar nosso próprio código fonte na função fonte na função processRequestprocessRequest;;

Page 22: Tecnologias para Internet - Aula 14

Meu primeiro ServletMeu primeiro Servlet

Page 23: Tecnologias para Internet - Aula 14

Meu primeiro ServletMeu primeiro Servlet

Executando o Servlet:Executando o Servlet: Para executar o Servlet (caso não exista erros), Para executar o Servlet (caso não exista erros),

deveremos utilizar as teclas de atalho deveremos utilizar as teclas de atalho Shift + F6Shift + F6;; Também podemos clicar com o botão direito sobre Também podemos clicar com o botão direito sobre

o arquivo de Servlet demonstrado no painel de o arquivo de Servlet demonstrado no painel de Projeto, para então clicar em Projeto, para então clicar em Executar arquivoExecutar arquivo;;

Também podemos acessar a opção de menu Também podemos acessar a opção de menu Executar / Executar arquivoExecutar / Executar arquivo;;

O navegador padrão será executado, O navegador padrão será executado, demonstrando a saída do Servlet implementado;demonstrando a saída do Servlet implementado;