SlideShare une entreprise Scribd logo
1  sur  54
Prof. Oscar Revisão – Java Server Page
Conceitos básicos ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Conceitos básicos ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Conceitos básicos ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Conceitos básicos ,[object Object],[object Object],[object Object],[object Object],[object Object]
Conceitos básicos ,[object Object]
Conceitos básicos ,[object Object],[object Object],[object Object]
Descritores de distribuição ,[object Object],[object Object],[object Object],[object Object]
Diretivas JSP ,[object Object],[object Object],[object Object],[object Object]
Diretiva page ,[object Object],[object Object],[object Object],[object Object]
Diretiva page ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Diretiva page ,[object Object],[object Object],[object Object],[object Object]
Diretiva include ,[object Object],[object Object],[object Object],[object Object]
Diretiva taglib ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Elem. de criação de scripts ,[object Object],[object Object],[object Object],[object Object],[object Object]
Declarações ,[object Object],[object Object],[object Object],[object Object]
Expressões ,[object Object],[object Object],[object Object]
Scriptlets ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Comentários ,[object Object],[object Object],[object Object]
Objetos Implícitos JSP ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Classificação dos Objetos ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Classificação dos Objetos ,[object Object],[object Object],[object Object],[object Object],[object Object]
Objetos relacionados a Servlets ,[object Object],[object Object],[object Object],<%@ page info=&quot;Demonstração do Objeto Implícito Page&quot; %> Page Info: <%= getServletInfo() %>
Objetos relacionados a Servlets ,[object Object],[object Object],[object Object]
Input/Output ,[object Object],[object Object],[object Object],Dados de Sessão para Solicitação: <%= request.getSession( ) %>
Input/Output ,[object Object],[object Object],[object Object],<% response.addCookie(meuCookie) %>
Input/Output ,[object Object],[object Object],[object Object],<% out.println(“Olá Mundo!”) %> Tamanho do Buffer de Saída: <%= out.getBufferSize() %>  Tamanho da porção não usada: <%= out.getRemaining() %>
Objetos Contextuais ,[object Object],[object Object],[object Object],<% session.putValue(&quot;nome&quot;,request.getParameter(&quot;nome&quot;)); %>
Objetos Contextuais ,[object Object],[object Object],[object Object],Nome/Versão do container servlet: <%= application.getServerInfo() %>
Objetos Contextuais ,[object Object],[object Object],[object Object]
Tratamento de Erros ,[object Object],[object Object],[object Object],[object Object]
Tratamento de Erros Na página JSP normal: <%@page errorPage=&quot;error.jsp&quot; %> Na página para controle de erro: <%@page isErrorPage=&quot;true&quot; %> Erro:<%= exception.toString() %>  Mensagem:<%= exception.getMessage() %>
Métodos de conversão Os dados recebidos podem ser manipulados diretamente em páginas JSP dentro de scriptlets, expressões ou declarações e são utilizados através de variáveis, que de acordo com Java, devem ser declaradas como a sintaxe abaixo:   <% String nome = &quot;Texto - String&quot;; %>
Métodos de conversão Integer.parseInt <%  String input = &quot;19&quot;; int count = Integer.parseInt(input); %> Double.parseDouble <% String input = &quot;3.98&quot;; double preco = Double.parseDouble(input); %>
Métodos de conversão Float.parseFloat <% String input = &quot;20.93&quot;; float preco = Float.parseFloat(input); %> Long.parseLong <% String input = &quot;7000000000000&quot;; long counter = Long.parseLong(input); %>
Métodos de conversão Convertendo String em Data <% String strData = &quot;12/09/2009&quot;; Date dtData = new Date(strData); out.print(dtData); %>   Sat Sep 12 00:00:00 BRT 2009
Métodos de conversão Formatação de data <% DateFormat form = new SimpleDateFormat(&quot; dd/MM/yyyy HH:mm:ss &quot;); out.println(form.format(Calendar.getInstance().getTime())); %>     04/10/2009 02:34:19
Estruturas de controle IF if(condicao){   ... }else{   ... } Switch switch(var){ case 1: .... break; case 2: ... break; }
Estruturas de controle FOR for(inicializacao; teste; incremento){ ... } WHILE while(condicao){ ... } DO do{ .... }while(condicao);
Cookies Cookie é um mecanismo padrão fornecido pelo protocolo HTTP e que permite gravarmos pequenas quantidades de dados persistentes no navegador de um usuário. Gravando um cookie <% Cookie cookieJSP = new Cookie(&quot;nome_cookie&quot;, &quot;valor_cookie&quot;); // Define o tempo de vida com 2 dias cookieJSP.setMaxAge(2 * 24 * 60 * 60); // Grava o cookie na máquina do usuário response.addCookie(cookieJSP); %>
Cookies Lendo um cookie <% Cookie listaCookies[] = request.getCookies(); int numCookies = listaCookies.length; for (int i = 0 ; i < numCookies ; ++i) { out.print(listaCookies[i].getName()); out.print(listaCookies[i].getValue()); } %>
Session Session é um mecanismo que permite gravação de uma pequena quantidade de informação na sessão do servidor identificado por uma identificação - ID. Mecanismo: O browser abre uma conexão com o servidor, faz a solicitação, o servidor envia a resposta e fecha a conexão. Portanto a conexão existe para uma única solicitação/resposta. A idéia da sessão web é manter o estado do usuário entre várias conexões.  Na primeira conexão, o servidor gera um único session ID para o cliente e a devolve juntamente com a resposta. Nas próximas conexões, o cliente envia junto com a solicitação o seu session ID o que permite ao servidor identificá-lo.
Session Definindo a sessão: <%@ page session=&quot;true&quot; %> <% session.setAttribute(&quot;nome_sessao&quot;, user); session.putValue(&quot;nome_sessao&quot;, user); %> Recuperando a sessão: <% session.getAttribute(&quot;nome_sessao&quot;); session.getValue(&quot;nome_sessao&quot;); %>
Session Define o tempo máximo (em segundos) entre solicitações pelo qual a sessão será mantida. session.setMaxInactiveInterval(tempo);  Recupera o tempo máximo definido para a sessão. session.getMaxInactiveInterval();  Descarta somente o atributo da sessão informada ao parâmetro session.removeValue(&quot;nome_sessao&quot;);
Tags Ações Tags Standard Actions Forward A ação <jsp:forward> é usada para transferir permanentemente controle de uma página JSP para outro local no servidor. Qualquer conteúdo gerado pela página atual é descartado e o processamento da solicitação começa novamente no local alternativo. <jsp:forward page=&quot;processa.jsp&quot; />
Tags Ações Tags Standard Actions Include A ação <jsp:include> permite que os desenvolvedores de página incorporem o conteúdo gerado por outro documento local no output da página atual. O output do documento incluído é inserido no output da página original do lugar da <jsp:include>, depois o processamento da página original continua. <jsp:include page=&quot;header.jsp&quot; />
Tags Ações Tags Standard Actions Plugin A ação <jsp:plugin> permite o uso de plug-in de Java da Sun Microsystems, fornecendo um mecanismo compatível com várias plataformas para incorporar applets ou um JavaBean no navegador do usuário final. <jsp:plugin type=&quot;applet&quot; codebase=&quot;plugins&quot; code=&quot;br.com.aula.plugins.applets.calcula&quot; width=&quot;300&quot; height=&quot;300&quot;>  <jsp:params> <jsp:param name=&quot;param1&quot; value=&quot;<%= valor1 %>&quot;/> </jsp:params> </jsp:plugin>
Tags Ações Tags Standard Actions Plugin - Applet Applet é um software aplicativo que é executado no contexto de um browser. Uma applet geralmente executa funções bem específicas e foram introduzidas na primeira versão da plataforma Java em 1995. Applets em Java podem adicionar recursos que não são possíveis em HTML, podendo funcionar em qualquer browser, desde que tenha instalado a JVM no cliente.
Tags Ações Tags Standard Actions JavaBeans JavaBeans são componentes de software escritos em Java. Os próprios componentes são chamados de Beans e devem aderir as especificações delineadas na API de JavaBeans. Assim como muitos componentes de software, os Beans encapsulam tanto o estado quanto o comportamento da informação.
Tags Ações Tags Standard Actions A tag <jsp:useBean> A tag <jsp:useBean> diz a página que você quer disponibilizar um Bean para ela. A tag é utilizada para criar um Bean ou pegar um Bean existente no servidor. Exemplo: <jsp:useBean id=&quot; myClock &quot; class=&quot;java.util.Date&quot; /> <%=  myClock  %>
Tags Ações Tags Standard Actions A tag <jsp:getProperty> A principal maneira de acessar as propriedades de um Bean em JSP é através da tag <jsp:getProperty>. A tag <jsp:getProperty> produz conteúdo que podemos ver na HTML gerada pela página e espera-se dois atributos para uso da mesma: nome e propriedade.
Tags Ações Tags Standard Actions A tag <jsp:getProperty> <jsp:useBean id=&quot; time &quot; class=&quot;br.com.aula.beans.TimeBean&quot; /> <jsp:getProperty name=&quot; time &quot; property=&quot; hours &quot; /> public class TimeBean{ ..... public int get Hours (){ return hours; }
Tags Ações Tags Standard Actions A tag <jsp:setProperty> Usamos a tag <jsp:setProperty> para modificar as propriedades dos Beans. A tag <jsp:setProperty> pode ser usada em qualquer lugar dentro da página para modificar as propriedades de um Bean, desde que a propriedade tenha sido tornada gravável pelo programador do Bean.
Tags Ações Tags Standard Actions A tag <jsp:setProperty> <jsp:useBean id=&quot; time &quot; class=&quot;br.com.aula.beans.TimeBean&quot; /> <jsp:setProperty name=&quot; time &quot; property=&quot; hours &quot; value=&quot; 55 &quot; /> public class TimeBean{ ..... public void set Hours ( int h ){ this.hours = h; }

Contenu connexe

Tendances

Java Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e ServletsJava Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e ServletsEduardo Mendes
 
Engenharia da Computação: Resumo servlet + jsp br galo
Engenharia da Computação: Resumo servlet + jsp br galoEngenharia da Computação: Resumo servlet + jsp br galo
Engenharia da Computação: Resumo servlet + jsp br galoGuilhermePetrosky
 
Curso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web ApplicationCurso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web ApplicationMario Sergio
 
Curso Java (Parte 8) Web Service REST
Curso Java (Parte 8) Web Service RESTCurso Java (Parte 8) Web Service REST
Curso Java (Parte 8) Web Service RESTMario Sergio
 
Curso de Java (Parte 6) Introdução a Front-end
Curso de Java (Parte 6) Introdução a Front-endCurso de Java (Parte 6) Introdução a Front-end
Curso de Java (Parte 6) Introdução a Front-endMario Sergio
 
Java Web 5 - JSP, Expression Language e Taglibs
Java Web 5 - JSP, Expression Language e TaglibsJava Web 5 - JSP, Expression Language e Taglibs
Java Web 5 - JSP, Expression Language e TaglibsEduardo Mendes
 
Java Web Dev Introdução
Java Web Dev IntroduçãoJava Web Dev Introdução
Java Web Dev IntroduçãoMarcio Marinho
 
Workshop Ruby on Rails dia 2 ruby-pt
Workshop Ruby on Rails dia 2  ruby-ptWorkshop Ruby on Rails dia 2  ruby-pt
Workshop Ruby on Rails dia 2 ruby-ptPedro Sousa
 
WEB 2 - Aula 01 - 02.08
WEB 2 - Aula 01 - 02.08WEB 2 - Aula 01 - 02.08
WEB 2 - Aula 01 - 02.08Gilson Silva
 
Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1Eduardo Mendes
 
Curso de Java Persistence API (JPA) (Java EE 7)
Curso de Java Persistence API (JPA) (Java EE 7)Curso de Java Persistence API (JPA) (Java EE 7)
Curso de Java Persistence API (JPA) (Java EE 7)Helder da Rocha
 
Resumo Anotacoes JAX-WS Certificacao SCDJWS 5
Resumo Anotacoes JAX-WS Certificacao SCDJWS 5Resumo Anotacoes JAX-WS Certificacao SCDJWS 5
Resumo Anotacoes JAX-WS Certificacao SCDJWS 5Gilberto Holms
 
Persistência Java: Hibernate e JPA
Persistência Java: Hibernate e JPAPersistência Java: Hibernate e JPA
Persistência Java: Hibernate e JPACaelum
 

Tendances (20)

JSP com tags padrão
JSP com tags padrãoJSP com tags padrão
JSP com tags padrão
 
Java Server Pages
Java Server PagesJava Server Pages
Java Server Pages
 
JSPs parte 1
JSPs parte 1JSPs parte 1
JSPs parte 1
 
Java Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e ServletsJava Web - MVC básico com JSP e Servlets
Java Web - MVC básico com JSP e Servlets
 
Jsf 2 slideshare
Jsf 2 slideshareJsf 2 slideshare
Jsf 2 slideshare
 
Engenharia da Computação: Resumo servlet + jsp br galo
Engenharia da Computação: Resumo servlet + jsp br galoEngenharia da Computação: Resumo servlet + jsp br galo
Engenharia da Computação: Resumo servlet + jsp br galo
 
Curso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web ApplicationCurso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web Application
 
Curso Java (Parte 8) Web Service REST
Curso Java (Parte 8) Web Service RESTCurso Java (Parte 8) Web Service REST
Curso Java (Parte 8) Web Service REST
 
Curso de Java (Parte 6) Introdução a Front-end
Curso de Java (Parte 6) Introdução a Front-endCurso de Java (Parte 6) Introdução a Front-end
Curso de Java (Parte 6) Introdução a Front-end
 
Servlets e JSP
Servlets e JSPServlets e JSP
Servlets e JSP
 
Java Web 5 - JSP, Expression Language e Taglibs
Java Web 5 - JSP, Expression Language e TaglibsJava Web 5 - JSP, Expression Language e Taglibs
Java Web 5 - JSP, Expression Language e Taglibs
 
Carrinho com
Carrinho comCarrinho com
Carrinho com
 
Java Web Dev Introdução
Java Web Dev IntroduçãoJava Web Dev Introdução
Java Web Dev Introdução
 
Workshop Ruby on Rails dia 2 ruby-pt
Workshop Ruby on Rails dia 2  ruby-ptWorkshop Ruby on Rails dia 2  ruby-pt
Workshop Ruby on Rails dia 2 ruby-pt
 
WEB 2 - Aula 01 - 02.08
WEB 2 - Aula 01 - 02.08WEB 2 - Aula 01 - 02.08
WEB 2 - Aula 01 - 02.08
 
Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1
 
Curso de Java Persistence API (JPA) (Java EE 7)
Curso de Java Persistence API (JPA) (Java EE 7)Curso de Java Persistence API (JPA) (Java EE 7)
Curso de Java Persistence API (JPA) (Java EE 7)
 
Resumo Anotacoes JAX-WS Certificacao SCDJWS 5
Resumo Anotacoes JAX-WS Certificacao SCDJWS 5Resumo Anotacoes JAX-WS Certificacao SCDJWS 5
Resumo Anotacoes JAX-WS Certificacao SCDJWS 5
 
Persistência Java: Hibernate e JPA
Persistência Java: Hibernate e JPAPersistência Java: Hibernate e JPA
Persistência Java: Hibernate e JPA
 
Estrutura do Projeto
Estrutura do ProjetoEstrutura do Projeto
Estrutura do Projeto
 

En vedette

Instalação Apache Tomcat
Instalação Apache TomcatInstalação Apache Tomcat
Instalação Apache TomcatOscar
 
Apache Wicket @ JustJava 2008
Apache Wicket @ JustJava 2008Apache Wicket @ JustJava 2008
Apache Wicket @ JustJava 2008Bruno Borges
 
Apache solr: como, quando e onde
Apache solr: como, quando e ondeApache solr: como, quando e onde
Apache solr: como, quando e ondePedro Rocha
 
Gestão da informação com apache solr e drupal
Gestão da informação com apache solr e drupalGestão da informação com apache solr e drupal
Gestão da informação com apache solr e drupalPedro Rocha
 
AULA classificação facetada
AULA classificação facetadaAULA classificação facetada
AULA classificação facetadaHumberto Silva
 
Conhecendo Apache Cassandra @Movile
Conhecendo Apache Cassandra  @MovileConhecendo Apache Cassandra  @Movile
Conhecendo Apache Cassandra @MovileEiti Kimura
 
Cassandra overview: Um Caso Prático
Cassandra overview:  Um Caso PráticoCassandra overview:  Um Caso Prático
Cassandra overview: Um Caso PráticoEiti Kimura
 
Sistemas de classificação bibliográfica [perspectivas da biblioteconomia cont...
Sistemas de classificação bibliográfica [perspectivas da biblioteconomia cont...Sistemas de classificação bibliográfica [perspectivas da biblioteconomia cont...
Sistemas de classificação bibliográfica [perspectivas da biblioteconomia cont...Daniel Ribeiro dos Santos
 

En vedette (11)

Instalação Apache Tomcat
Instalação Apache TomcatInstalação Apache Tomcat
Instalação Apache Tomcat
 
Apresentacao de Introdução ao Apache Maven
Apresentacao de Introdução ao Apache MavenApresentacao de Introdução ao Apache Maven
Apresentacao de Introdução ao Apache Maven
 
Apache Wicket @ JustJava 2008
Apache Wicket @ JustJava 2008Apache Wicket @ JustJava 2008
Apache Wicket @ JustJava 2008
 
Introdução Wicket
Introdução WicketIntrodução Wicket
Introdução Wicket
 
Apache solr: como, quando e onde
Apache solr: como, quando e ondeApache solr: como, quando e onde
Apache solr: como, quando e onde
 
Gestão da informação com apache solr e drupal
Gestão da informação com apache solr e drupalGestão da informação com apache solr e drupal
Gestão da informação com apache solr e drupal
 
AULA classificação facetada
AULA classificação facetadaAULA classificação facetada
AULA classificação facetada
 
Conhecendo Apache Cassandra @Movile
Conhecendo Apache Cassandra  @MovileConhecendo Apache Cassandra  @Movile
Conhecendo Apache Cassandra @Movile
 
Linux - Servidor Web Apache
Linux - Servidor Web ApacheLinux - Servidor Web Apache
Linux - Servidor Web Apache
 
Cassandra overview: Um Caso Prático
Cassandra overview:  Um Caso PráticoCassandra overview:  Um Caso Prático
Cassandra overview: Um Caso Prático
 
Sistemas de classificação bibliográfica [perspectivas da biblioteconomia cont...
Sistemas de classificação bibliográfica [perspectivas da biblioteconomia cont...Sistemas de classificação bibliográfica [perspectivas da biblioteconomia cont...
Sistemas de classificação bibliográfica [perspectivas da biblioteconomia cont...
 

Similaire à JavaServerPagesJSP

Servlet jsp tomcat 8
Servlet jsp tomcat 8Servlet jsp tomcat 8
Servlet jsp tomcat 8maxrosan
 
Trabalho ProgramaçãO Comercial Ii
Trabalho ProgramaçãO Comercial IiTrabalho ProgramaçãO Comercial Ii
Trabalho ProgramaçãO Comercial IiMateus Ramos Pereira
 
Uma abordagem ao Java EE 6
Uma abordagem ao Java EE 6Uma abordagem ao Java EE 6
Uma abordagem ao Java EE 6danielfcampos
 
Apresentação JAVA 1
Apresentação JAVA 1Apresentação JAVA 1
Apresentação JAVA 1Camila Garcia
 
Produtividade com JavaServer Faces
Produtividade com JavaServer FacesProdutividade com JavaServer Faces
Produtividade com JavaServer FacesEduardo Bregaida
 
JSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaJSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaEduardo Bregaida
 
TechDay - Sistemas WEB em Java - Rogério N. Jr.
TechDay - Sistemas WEB em Java - Rogério N. Jr.TechDay - Sistemas WEB em Java - Rogério N. Jr.
TechDay - Sistemas WEB em Java - Rogério N. Jr.Rogério Napoleão Jr.
 
Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Helder da Rocha
 
Jsf – Java Sever Faces
Jsf – Java Sever FacesJsf – Java Sever Faces
Jsf – Java Sever Facesbielgott
 
Cactus - Testes em J2EE com Jakarta Cactus
Cactus - Testes em J2EE com Jakarta CactusCactus - Testes em J2EE com Jakarta Cactus
Cactus - Testes em J2EE com Jakarta CactusDenis L Presciliano
 
Sistema S2DG e Tecnologias Web
Sistema S2DG e Tecnologias WebSistema S2DG e Tecnologias Web
Sistema S2DG e Tecnologias WebElenilson Vieira
 
JavaServer Faces Produtividade em Desenvolvimento
JavaServer Faces Produtividade em DesenvolvimentoJavaServer Faces Produtividade em Desenvolvimento
JavaServer Faces Produtividade em DesenvolvimentoEduardo Bregaida
 

Similaire à JavaServerPagesJSP (20)

JSP: Introdução Parte 1
JSP: Introdução Parte 1JSP: Introdução Parte 1
JSP: Introdução Parte 1
 
Servlet jsp tomcat 8
Servlet jsp tomcat 8Servlet jsp tomcat 8
Servlet jsp tomcat 8
 
Tag Libraries
Tag LibrariesTag Libraries
Tag Libraries
 
Trabalho ProgramaçãO Comercial Ii
Trabalho ProgramaçãO Comercial IiTrabalho ProgramaçãO Comercial Ii
Trabalho ProgramaçãO Comercial Ii
 
Uma abordagem ao Java EE 6
Uma abordagem ao Java EE 6Uma abordagem ao Java EE 6
Uma abordagem ao Java EE 6
 
Tag Libraries e JSTL
Tag Libraries e JSTLTag Libraries e JSTL
Tag Libraries e JSTL
 
Apresentação JAVA 1
Apresentação JAVA 1Apresentação JAVA 1
Apresentação JAVA 1
 
Produtividade com JavaServer Faces
Produtividade com JavaServer FacesProdutividade com JavaServer Faces
Produtividade com JavaServer Faces
 
JSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaJSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.java
 
TechDay - Sistemas WEB em Java - Rogério N. Jr.
TechDay - Sistemas WEB em Java - Rogério N. Jr.TechDay - Sistemas WEB em Java - Rogério N. Jr.
TechDay - Sistemas WEB em Java - Rogério N. Jr.
 
Java Server Pages
Java Server PagesJava Server Pages
Java Server Pages
 
Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)
 
servlet-introducao
servlet-introducaoservlet-introducao
servlet-introducao
 
Java Web 1 Introducao
Java Web 1 IntroducaoJava Web 1 Introducao
Java Web 1 Introducao
 
Jsf – Java Sever Faces
Jsf – Java Sever FacesJsf – Java Sever Faces
Jsf – Java Sever Faces
 
Cactus - Testes em J2EE com Jakarta Cactus
Cactus - Testes em J2EE com Jakarta CactusCactus - Testes em J2EE com Jakarta Cactus
Cactus - Testes em J2EE com Jakarta Cactus
 
Sistema S2DG e Tecnologias Web
Sistema S2DG e Tecnologias WebSistema S2DG e Tecnologias Web
Sistema S2DG e Tecnologias Web
 
JavaServer Faces Produtividade em Desenvolvimento
JavaServer Faces Produtividade em DesenvolvimentoJavaServer Faces Produtividade em Desenvolvimento
JavaServer Faces Produtividade em Desenvolvimento
 
Spring Framework
Spring FrameworkSpring Framework
Spring Framework
 
Programação asp
Programação aspProgramação asp
Programação asp
 

JavaServerPagesJSP

  • 1. Prof. Oscar Revisão – Java Server Page
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32. Tratamento de Erros Na página JSP normal: <%@page errorPage=&quot;error.jsp&quot; %> Na página para controle de erro: <%@page isErrorPage=&quot;true&quot; %> Erro:<%= exception.toString() %> Mensagem:<%= exception.getMessage() %>
  • 33. Métodos de conversão Os dados recebidos podem ser manipulados diretamente em páginas JSP dentro de scriptlets, expressões ou declarações e são utilizados através de variáveis, que de acordo com Java, devem ser declaradas como a sintaxe abaixo: <% String nome = &quot;Texto - String&quot;; %>
  • 34. Métodos de conversão Integer.parseInt <% String input = &quot;19&quot;; int count = Integer.parseInt(input); %> Double.parseDouble <% String input = &quot;3.98&quot;; double preco = Double.parseDouble(input); %>
  • 35. Métodos de conversão Float.parseFloat <% String input = &quot;20.93&quot;; float preco = Float.parseFloat(input); %> Long.parseLong <% String input = &quot;7000000000000&quot;; long counter = Long.parseLong(input); %>
  • 36. Métodos de conversão Convertendo String em Data <% String strData = &quot;12/09/2009&quot;; Date dtData = new Date(strData); out.print(dtData); %> Sat Sep 12 00:00:00 BRT 2009
  • 37. Métodos de conversão Formatação de data <% DateFormat form = new SimpleDateFormat(&quot; dd/MM/yyyy HH:mm:ss &quot;); out.println(form.format(Calendar.getInstance().getTime())); %> 04/10/2009 02:34:19
  • 38. Estruturas de controle IF if(condicao){ ... }else{ ... } Switch switch(var){ case 1: .... break; case 2: ... break; }
  • 39. Estruturas de controle FOR for(inicializacao; teste; incremento){ ... } WHILE while(condicao){ ... } DO do{ .... }while(condicao);
  • 40. Cookies Cookie é um mecanismo padrão fornecido pelo protocolo HTTP e que permite gravarmos pequenas quantidades de dados persistentes no navegador de um usuário. Gravando um cookie <% Cookie cookieJSP = new Cookie(&quot;nome_cookie&quot;, &quot;valor_cookie&quot;); // Define o tempo de vida com 2 dias cookieJSP.setMaxAge(2 * 24 * 60 * 60); // Grava o cookie na máquina do usuário response.addCookie(cookieJSP); %>
  • 41. Cookies Lendo um cookie <% Cookie listaCookies[] = request.getCookies(); int numCookies = listaCookies.length; for (int i = 0 ; i < numCookies ; ++i) { out.print(listaCookies[i].getName()); out.print(listaCookies[i].getValue()); } %>
  • 42. Session Session é um mecanismo que permite gravação de uma pequena quantidade de informação na sessão do servidor identificado por uma identificação - ID. Mecanismo: O browser abre uma conexão com o servidor, faz a solicitação, o servidor envia a resposta e fecha a conexão. Portanto a conexão existe para uma única solicitação/resposta. A idéia da sessão web é manter o estado do usuário entre várias conexões. Na primeira conexão, o servidor gera um único session ID para o cliente e a devolve juntamente com a resposta. Nas próximas conexões, o cliente envia junto com a solicitação o seu session ID o que permite ao servidor identificá-lo.
  • 43. Session Definindo a sessão: <%@ page session=&quot;true&quot; %> <% session.setAttribute(&quot;nome_sessao&quot;, user); session.putValue(&quot;nome_sessao&quot;, user); %> Recuperando a sessão: <% session.getAttribute(&quot;nome_sessao&quot;); session.getValue(&quot;nome_sessao&quot;); %>
  • 44. Session Define o tempo máximo (em segundos) entre solicitações pelo qual a sessão será mantida. session.setMaxInactiveInterval(tempo); Recupera o tempo máximo definido para a sessão. session.getMaxInactiveInterval(); Descarta somente o atributo da sessão informada ao parâmetro session.removeValue(&quot;nome_sessao&quot;);
  • 45. Tags Ações Tags Standard Actions Forward A ação <jsp:forward> é usada para transferir permanentemente controle de uma página JSP para outro local no servidor. Qualquer conteúdo gerado pela página atual é descartado e o processamento da solicitação começa novamente no local alternativo. <jsp:forward page=&quot;processa.jsp&quot; />
  • 46. Tags Ações Tags Standard Actions Include A ação <jsp:include> permite que os desenvolvedores de página incorporem o conteúdo gerado por outro documento local no output da página atual. O output do documento incluído é inserido no output da página original do lugar da <jsp:include>, depois o processamento da página original continua. <jsp:include page=&quot;header.jsp&quot; />
  • 47. Tags Ações Tags Standard Actions Plugin A ação <jsp:plugin> permite o uso de plug-in de Java da Sun Microsystems, fornecendo um mecanismo compatível com várias plataformas para incorporar applets ou um JavaBean no navegador do usuário final. <jsp:plugin type=&quot;applet&quot; codebase=&quot;plugins&quot; code=&quot;br.com.aula.plugins.applets.calcula&quot; width=&quot;300&quot; height=&quot;300&quot;> <jsp:params> <jsp:param name=&quot;param1&quot; value=&quot;<%= valor1 %>&quot;/> </jsp:params> </jsp:plugin>
  • 48. Tags Ações Tags Standard Actions Plugin - Applet Applet é um software aplicativo que é executado no contexto de um browser. Uma applet geralmente executa funções bem específicas e foram introduzidas na primeira versão da plataforma Java em 1995. Applets em Java podem adicionar recursos que não são possíveis em HTML, podendo funcionar em qualquer browser, desde que tenha instalado a JVM no cliente.
  • 49. Tags Ações Tags Standard Actions JavaBeans JavaBeans são componentes de software escritos em Java. Os próprios componentes são chamados de Beans e devem aderir as especificações delineadas na API de JavaBeans. Assim como muitos componentes de software, os Beans encapsulam tanto o estado quanto o comportamento da informação.
  • 50. Tags Ações Tags Standard Actions A tag <jsp:useBean> A tag <jsp:useBean> diz a página que você quer disponibilizar um Bean para ela. A tag é utilizada para criar um Bean ou pegar um Bean existente no servidor. Exemplo: <jsp:useBean id=&quot; myClock &quot; class=&quot;java.util.Date&quot; /> <%= myClock %>
  • 51. Tags Ações Tags Standard Actions A tag <jsp:getProperty> A principal maneira de acessar as propriedades de um Bean em JSP é através da tag <jsp:getProperty>. A tag <jsp:getProperty> produz conteúdo que podemos ver na HTML gerada pela página e espera-se dois atributos para uso da mesma: nome e propriedade.
  • 52. Tags Ações Tags Standard Actions A tag <jsp:getProperty> <jsp:useBean id=&quot; time &quot; class=&quot;br.com.aula.beans.TimeBean&quot; /> <jsp:getProperty name=&quot; time &quot; property=&quot; hours &quot; /> public class TimeBean{ ..... public int get Hours (){ return hours; }
  • 53. Tags Ações Tags Standard Actions A tag <jsp:setProperty> Usamos a tag <jsp:setProperty> para modificar as propriedades dos Beans. A tag <jsp:setProperty> pode ser usada em qualquer lugar dentro da página para modificar as propriedades de um Bean, desde que a propriedade tenha sido tornada gravável pelo programador do Bean.
  • 54. Tags Ações Tags Standard Actions A tag <jsp:setProperty> <jsp:useBean id=&quot; time &quot; class=&quot;br.com.aula.beans.TimeBean&quot; /> <jsp:setProperty name=&quot; time &quot; property=&quot; hours &quot; value=&quot; 55 &quot; /> public class TimeBean{ ..... public void set Hours ( int h ){ this.hours = h; }