IGO COELHO http://twitter.com/igocoelho http://www.igocoelho.com.br http://www.javace.org [email_address] DESENVOLVIMENTO PARA WEB EM JAVA COM SERVLET E JSP FATENE 06/2010
- Java e JEE - HTTP - Tomcat - Servlet - JSP - TagLib AGENDA
Java e JEE
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
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
COMO FUNCIONA
A PLATAFORMA
-  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
HTTP
-  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
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
COMO FUNCIONA GET / HTTP/1.1 Host:  www.google.com User-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.8 Accept-Language: pt-br,pt;q=0.8,en-us;q=0.5,en;q=0.3 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 300 Connection: 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.
COMO FUNCIONA HTTP/1.1 200 OK Location:  http://www.google.com.br / Cache-Control: private Content-Type: text/html; charset=UTF-8 Date: Fri, 11 Jun 2010 19:12:34 GMT Content-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: ...
Tomcat
-  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
COMO FUNCIONA
ESTRUTURA BÁSICA
Mão na massa
Servlet
-  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
- 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
-  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
< 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
Mão na massa
JSP
-  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
COMO FUNCIONA
Mão na massa
TagLib
-  É 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
- 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
Mão na massa
Obrigado !!! http://twitter.com/igocoelho http://www.igocoelho.com.br http://www.javace.org [email_address]

Desenvolvimento web em java com JSP e Servlets

  • 1.
    IGO COELHO http://twitter.com/igocoelhohttp://www.igocoelho.com.br http://www.javace.org [email_address] DESENVOLVIMENTO PARA WEB EM JAVA COM SERVLET E JSP FATENE 06/2010
  • 3.
    - Java eJEE - HTTP - Tomcat - Servlet - JSP - TagLib AGENDA
  • 4.
  • 5.
    1991 - ProjetoGreen 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
  • 6.
    1996 - Java1.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
  • 7.
  • 8.
  • 9.
    - 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
  • 10.
  • 11.
    - HypertextTransfer 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
  • 12.
    Possui 8 métodosque 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
  • 13.
    COMO FUNCIONA GET/ HTTP/1.1 Host: www.google.com User-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.8 Accept-Language: pt-br,pt;q=0.8,en-us;q=0.5,en;q=0.3 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 300 Connection: 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.
  • 14.
    COMO FUNCIONA HTTP/1.1200 OK Location: http://www.google.com.br / Cache-Control: private Content-Type: text/html; charset=UTF-8 Date: Fri, 11 Jun 2010 19:12:34 GMT Content-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: ...
  • 15.
  • 16.
    - ContainerServlet/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
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
    - OServlet 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
  • 22.
    - 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
  • 23.
    - 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
  • 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
  • 25.
  • 26.
  • 27.
    - 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
  • 28.
  • 29.
  • 30.
  • 31.
    - É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
  • 32.
    - Nos ajudama 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
  • 33.
  • 34.
    Obrigado !!! http://twitter.com/igocoelhohttp://www.igocoelho.com.br http://www.javace.org [email_address]