34
1 IGO COELHO http://twitter.com/igocoelho http://www.igocoelho.com.br http://www.javace.org [email protected] DESENVOLVIMENTO PARA WEB EM JAVA COM SERVLET E JSP FATENE 06/2010

Desenvolvimento web em java com JSP e Servlets

Embed Size (px)

DESCRIPTION

Palestrada ministrada na FATENE(Faculdade de Tecnologia do Nordeste) em junho de 2010 para a turma de servidores web do prof. Marcondes Alexandre.

Citation preview

Page 1: Desenvolvimento web em java com JSP e Servlets

1

IGO COELHO

http://twitter.com/igocoelho

http://www.igocoelho.com.br

http://www.javace.org

[email protected]

DESENVOLVIMENTO PARA WEB EM JAVA COM SERVLET E JSP

FATENE 06/2010

Page 2: Desenvolvimento web em java com JSP e Servlets

2

Page 3: Desenvolvimento web em java com JSP e Servlets

33

- Java e JEE

- HTTP

- Tomcat

- Servlet

- JSP

- TagLib

AGENDA

Page 4: Desenvolvimento web em java com JSP e Servlets

44

Java e JEE

Page 5: Desenvolvimento web em java com JSP e Servlets

55

1991 - Projeto Green

1992 - Protótipo *7, Duke e Linguagem OAK

1993 - Mosaic o primeiro navegador web

1995 - OAK passa a ser chamado de Java

2007 - Java open source

2009 - Sun é comprada pela Oracle

A HISTÓRIA

Page 6: Desenvolvimento web em java com JSP e Servlets

66

1996 - Java 1.0

1997 - Java Development Kit 1.1

1998 - Java 2 Platform 1.2

2000 - Java 2 Platform 1.3

2002 - Java 2 Platform 1.4

2004 - Java 2 Platform 1.5 (Tiger ou Java 5)

2006 - Java 6 (Mustang)

???? - Java 7 (Dolphin)http://en.wikipedia.org/wiki/Java_version_history

A EVOLUÇÃO

Page 7: Desenvolvimento web em java com JSP e Servlets

77

COMO FUNCIONA

Page 8: Desenvolvimento web em java com JSP e Servlets

88

A PLATAFORMA

Page 9: Desenvolvimento web em java com JSP e Servlets

99

- Servlets- JSP- JSF (desenvolvimento web baseado em componentes)

- JTA (padroniza o tratamento de transações dentro de uma aplicação Java)

- JPA (padroniza o acesso a banco de dados através de mapeamento Objeto/Relacional)

- EJB (utilizados no desenvolvimento de componentes de software)

- JCA (padroniza a ligação a aplicações legadas)

- JMS (troca de mensagens)

- JAX-* (xml, SOAP e muito mais)

API JEE

Page 10: Desenvolvimento web em java com JSP e Servlets

1010

HTTP

Page 11: Desenvolvimento web em java com JSP e Servlets

1111

- Hypertext Transfer Protocol- Seu uso para a obtenção de recursos levou ao estabelecimento da WWW- Primeira versão (HTTP/0.9) é de 1990- De 1992 a 1996 foi desenvolvida a versão 1.0- Em 1999 foi liberada a versão 1.1- Fica na camada de aplicação segundo o modelo OSI- Trafega sobre o protocolo TCP / IP- A comunicação entre o cliente e o servidor é por meio de mensagens- Não guarda estado entre as trocas de mensagens

HTTP

Page 12: Desenvolvimento web em java com JSP e Servlets

1212

Possui 8 métodos que indicam a ação a ser realizada no recurso especificado

- GET (Solicita um recurso)- HEAD (Solicita metainformações de um recurso)- POST (Envia dados para serem processados)- PUT (Envia um recurso)- DELETE (Excluir o recurso)- TRACE (Ecoa a requisição)- OPTIONS (Recupera os métodos que o servidor aceita)- CONNECT (Uso com proxy para túnel SSL)

HTTP

Page 13: Desenvolvimento web em java com JSP e Servlets

1313

COMO FUNCIONA

GET / HTTP/1.1Host: www.google.comUser-Agent: Mozilla/5.0 (Windows; pt-BR; rv:1.9.0.6) Firefox/3.0.6 Accept: text/html,application/xhtmlxml,application/xml;q=0.9,* *;q=0.8Accept-Language: pt-br,pt;q=0.8,en-us;q=0.5,en;q=0.3Accept-Encoding: gzip,deflateAccept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7Keep-Alive: 300Connection: keep-alive

Bom dia Google.com,Gostaria de ler sua página.Estou usando o navegador Firefox na versão 3.0.6.No momento eu aceito HTML.Gostaria de receber o conteúdo em português, mas também entendo inglês.Uso o padrão de caracteres (letras) ISO-8859 e UTF-8.

Page 14: Desenvolvimento web em java com JSP e Servlets

1414

COMO FUNCIONA

HTTP/1.1 200 OKLocation: http://www.google.com.br/Cache-Control: privateContent-Type: text/html; charset=UTF-8Date: Fri, 11 Jun 2010 19:12:34 GMTContent-Length: 438<html>...</html>

Aqui é o Google.com.br.Estou enviando a página que pediu.Você pode guardar as informações e usa-las em outras visitas.Estou enviando apenas texto e HTML como você pediu.Essa carta foi feita as 19:12:34 horas do dia 11/06/2010.O conteúdo é formado por 438 letras, segue:...

Page 15: Desenvolvimento web em java com JSP e Servlets

1515

Tomcat

Page 16: Desenvolvimento web em java com JSP e Servlets

1616

- Container Servlet/JSP mais conhecido entre os desenvolvedores dessas tecnologias.

- Desenvolvido e mantido pela Apache Software Faundation, sua distribuição é de livre utilização, possuindo seu código-fonte aberto.

- Oficialmente endossado como a implementação de referência para as tecnologias JSP e Servlet.

- Tem a capacidade de atuar também como servidor web, ou pode funcionar integrado a um servidor web dedicado como o Apache ou o IIS.

TOMCAT

Page 17: Desenvolvimento web em java com JSP e Servlets

17

COMO FUNCIONA

Page 18: Desenvolvimento web em java com JSP e Servlets

18

ESTRUTURA BÁSICA

Page 19: Desenvolvimento web em java com JSP e Servlets

1919

Mão na massa

Page 20: Desenvolvimento web em java com JSP e Servlets

2020

Servlet

Page 21: Desenvolvimento web em java com JSP e Servlets

2121

- O Servlet foi introduzido pela Sun Microsystems em 1996, aprimorando a funcionalidade de servidores da Web.

- É considerado eficiente para desenvolver soluções baseadas na Web, interagir com o banco de dados em favor de um cliente, gerar dinamicamente documentos HTML personalizados a serem exibidos por navegadores e manter informações de sessão exclusivas de cada cliente.

SERVLET

Page 22: Desenvolvimento web em java com JSP e Servlets

2222

- Toda servlet é basicamente uma classe que processa requisições e respostas dinâmicamente.

- Uma Servlet necessita de um container Web para ser executado.

- Uma servlet funciona como um pequeno servidor que recebe chamadas de diversos clientes.

- Uma primeira idéia da servlet seria que cada uma delas é responsável por uma página, sendo que ela lê dados da requisição do cliente e responde com outros dados (html, gif etc).

SERVLET

Page 23: Desenvolvimento web em java com JSP e Servlets

2323

- Resumindo, cada servlet é um objeto java que recebe tais requisições (request) e retorna algo (response), como por exemplo uma página html ou uma imagem do formato jpg.

- Diversas requisições podem ser feitas à uma mesma servlet ao mesmo tempo em um único servidor, por isso ela é mais rápida que um programa CGI comum. A especificação da servlet cita algumas vantagens que possui sobre o antigo CGI.

SERVLET

Page 24: Desenvolvimento web em java com JSP e Servlets

24

<servlet> <servlet-name>OiMundo</servlet-name> <servlet-class>br.com.fatene.OiMundo</servlet-class> </servlet>

<servlet-mapping> <servlet-name>OiMundo</servlet-name> <url-pattern>/OiMundo</url-pattern> </servlet-mapping>

CRIANDO UM SERVLET

- Extenda a classe javax.servlet.http.HttpServlet- Declare o Servlet no web.xml

Page 25: Desenvolvimento web em java com JSP e Servlets

2525

Mão na massa

Page 26: Desenvolvimento web em java com JSP e Servlets

2626

JSP

Page 27: Desenvolvimento web em java com JSP e Servlets

2727

- JSP (JavaServer Pages) é uma tecnologia baseada em Java que simplifica o processo de desenvolvimento de sites da web dinâmicos.

- Foi criada pela Sun Microsystems em junho de 1999 com o objetivo de simplificar a tecnologia Java Servlets, possuindo um suporte robusto e repleto de recursos Java no servidor, a fim de garantir uma plataforma estável e bem definida.

JSP

Page 28: Desenvolvimento web em java com JSP e Servlets

28

COMO FUNCIONA

Page 29: Desenvolvimento web em java com JSP e Servlets

2929

Mão na massa

Page 30: Desenvolvimento web em java com JSP e Servlets

3030

TagLib

Page 31: Desenvolvimento web em java com JSP e Servlets

3131

- É nada mais nada menos que uma biblioteca de tags customizadas que são utilizadas na composição de páginas JSP.

- É uma biblioteca de “classes Java” que são utilizadas “na forma de tags” para auxiliar na geração de conteúdo dinâmico em uma página JSP.

TAGLIB

Page 32: Desenvolvimento web em java com JSP e Servlets

3232

- Nos ajudam a eliminar consideravelmente a utilização de scriptlets e redundância de código em páginas JSP.

- Uma tag customizada JSP é composta basicamente por dois elementos: •  Uma classe Java sendo a sua implementação. •  Um arquivo “.tld” contendo os seus metadados – suas descrições.

TAGLIB

Page 33: Desenvolvimento web em java com JSP e Servlets

3333

Mão na massa

Page 34: Desenvolvimento web em java com JSP e Servlets

34

Obrigado !!!

http://twitter.com/igocoelho

http://www.igocoelho.com.br

http://www.javace.org

[email protected]