SlideShare uma empresa Scribd logo
1 de 26
LINGUAGEM DE
PROGRAMAÇÃO III
APLICAÇÕES WEB
Introdução
Uma página HTML simplesmente é retornada como está ao
cliente, sem processamento pelo servidor, e, se isso acontecer
para uma página que contenha código java nela, o navegador
não sérá capaz de decifrar a parte JAVA do conteúdo da página.
É exatamente isto que uma JSP permite que o desenvolvedor
faça
A página tem uma extensão JSP que alerta ao servidor que ela
pode ter código JAVA que precisa ser processado e, ao mesmo
tempo, permite que o restante do conteúdo HTML permaneça
intacto.
Introdução
Você pode ter uma página JSP que contenha apenas código
HTML.
Um página JSP consiste em código JAVA incorporado em HTML,
portanto ela se assemelha bem a um arquivo HTML puro, com
habituais etiquetas HTML, acrescido de etiquetas especiais que
englobam o código JAVA.
Cada trecho de código JAVA é colocado entre etiquetas especiais
que alertam o servidor para o código embutido que precisa ser
compilado, processado e convertido em conteúdo dinâmico
HTML equivalente
Introdução
Ao examinar o código JAVA embutio, o servidor
automaticamente cria um novo SERVLET, nos bastidores, um por
JSP, e converte o código JAVA embutido em código equivalente
de tranferência de HTML.
Código JAVA é opcional em páginas JSP.
O que o TOMCAT faz? Uma simples página JSP dá muito trabalho
ao container. Vejamos o que ocorre a seguir:
O TOMCAT “viu” que a solicitação era por um arquivo com uma
extensão .JSP e, assim preparou-se para criar um SERVLET.
Introdução
Para cada arquivo JSP que for solicitado, o TOMCAT
efetivamente criar um novo arquivo .JAVA, em tempo de
execução, com o nome derivado do nome do seru arquivo JSP e
o compila por conta própria para criar um arquivo
SERVLET.CLASS
Ele coloca todas essas classes SERVLET criadas por ele próprio
em uma pasta chamada CATALINA (padrão)
Várias subpastas são criadas para executar a página JSP:
Introdução
x
Elementos JSP
• Etiquetas especiais são tecnicamente chamadas de
ELEMENTOS. Sintaxe dos elementos JSP:
<elemento_etiqueta nomeAtributo1=“valor1”
nomeAtributo2=“valor2” ...>
........
</elemento_etiqueta>
• Os atributos represetam uma lista de pares nome/valor que se
aplicam ao elemento_etiqueta, que podem ser ou não
obrigatórios para cada etiqueta definida. Quando NÃO
obrigatórios, assumem valores padrão.
Elementos JSP
• Para cada finalidade, exite um elemento apropriado de JSP.
Exitem 5 tipos diferentes de elementos:
• Expressões
• Scriptlets
• Declarações
• Diretivas
• Elementos de ação
• Scriptlets e declarações são referidos como ELEMENTOS DE
SCRIPTING
Expressões JSP
• Uma forma de inserir código JAVA em JSP é usar uma
EXPRESSÃO JSP
• Uma EXPRESSÃO não é uma INSTRUÇÃO
• Uma EXPRESSÃO JAVA é delimitada pelas etiquetas de
expressão <%= %>
Expressões JSP
• As ETIQUETAS DE EXPRESSÃO pegam a STRING delimitada por
ela e a transferem usando uma INSTRUÇÃO OUT.PRINT()
• Se a EXPRESSÃO consistir em um OBJETO, JAVA invocará o
método TOSTRING() a partir da superclasse global OBJECT.
• A etiqueta de expressão, portanto, deve ter no mínimo uma
string delimitada
Expressões JSP
• A expressão é formada por uma ou mais variáveis, não uma
instrução, portanto, a etiqueta de expressão <%=%> não
termina com ponto e vírgula
• Exemplo: exibindo data e hora corrente
• Para apresentar a data em JAVA devemos usar new
java.util.Date();
• Isto gera um objeto do tipo DATE em Java. Quando o método
TOSTRING() for chamado com um objeto do tipo DATE, ele
retornará a STRING equivalente a este objeto
Expressões JSP
• O código fonte abaixo (EXEMPLO 1 JSP) ensina como exibir o conteúdo atual do
OBJETO DATE como uma STRING
<%@page contentType="text/html" pageEncoding="UTF-8" import="java.util.*"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title> :: EXEMPLO 1 - DATA :: </title>
</head>
<body>
<h1> :: EXEMPLO 1 - DATA :: </h1>
<p> <font face="TAHOMA" color="#green"> A hora atual é: <b> <%= new
java.util.Date()%> </font> </b> </p>
</body>
</html>
Expressões JSP
• Código JAVA foi embutido na JSP
• A solicitação vai primeiro ao servidor TOMCAT, que procurará
por quaisquer elementos
• Se ele encontrar, avaliará as variáveis incluídas na etiqueta e
inserirá a STRING equivalente nessa posição
• OUT.PRINT() é usado para mostrar a string ao cliente, no caso,
o navegador
Expressões JSP
• Vá até a pasta
• C:UsersCissaAppDataRoamingNetBeans8.0.2apache-
tomcat-
8.0.15.0_baseworkCatalinalocalhostExemplo1orgapache
jsp
• Haverão dois arquivos: index_jsp.java e index_jsp.class
• Olhe o método _JSPSERVICE()
• O tomcat converteu a expressão em uma instrução JAVA
equivalente
Scriptlets
• Expressões são limitadas em sua capacidade para incorporar
lógica complexa de negócios
• Expressões podem apenas transferir valores de algumas
variáveis ou expressões, mas não podem realizar
processamento de lógica de negócios
• SCRIPTLETs fazem isso: instruções JAVA incluídas entre as
etiquetas especiais <% %>
• Portanto, qual a diferença nas tags SCRIPTLETS e EXPRESSÕES?
Scriptlets
• Scriptlets em instruções válidas em JAVA, portanto, devem
terminar com ponto e vírgula
• SCRIPTLETS são um meio para processar dados ou determinar
valores de váriaveis necessárias para a JSP exibir como
conteúdo HTML dinâmico
• EXEMPLO: alterando a forma de apresentar a data e hora
usando EXPRESSÕES + SCRIPTLETS
Scriptlets
• Scriptlets em instruções válidas em JAVA, portanto, devem
terminar com ponto e vírgula
• SCRIPTLETS são um meio para processar dados ou determinar
valores de váriaveis necessárias para a JSP exibir como
conteúdo HTML dinâmico
• EXEMPLO: alterando a forma de apresentar a data e hora
usando EXPRESSÕES + SCRIPTLETS
Exemplo 2
<%@page contentType="text/html" pageEncoding="UTF-8" import="java.util.*"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title> :: EXEMPLO 2 - DATA :: </title>
</head>
<%
java.util.Date horaAtual = new java.util.Date();
String hora = horaAtual.toString();
%>
<body>
<h1> :: EXEMPLO 2 - DATA ::</h1>
<p> <font face="TAHOMA" color="#green"> A hora atual é: <b> <%= hora %> </font> </b>
</p>
</body>
</html>
Exemplo 2
• C:UsersCissaAppDataRoamingNetBeans8.0.2apache-
tomcat-
8.0.15.0_baseworkCatalinalocalhostExemplo2orgapache
jsp
• O código java foi passado da forma como é!
• Portanto, o conteúdo do SCRIPTLET permanece intacto
quando é convertido para um servlet
• As etiquetas de expressão são todas convertidas
Diretivas
• <%@ %>  diretivas
• Sintaxe geral:
<%@ diretiva atributo1 = “valor1”, atributo2 = “valor2”, ... %>
• Três principais tipos de diretivas:
• Page
• Include
• Taglib
Diretivas
• A diretiva PAGE permite que classes sejam importadas para o
JSP usando o atributo IMPORT
• Import recebe uma lista de classes que devem ser separadas
por vírgulas
• Os nomes das classes devem ser totalmente qualificados na
declaração import. Exemplo: java.util.Date (e não apenas
Date)
• EXEMPLO NETBEANS
Importando Classes
Personalizadas em sua JSP
• As classes que você cria também podem ser importadas na
diretiva page
• Para isto, basta saber o caminho exato do arquivo .class
• Como JSPs são compilados em um SERVLET que pertence a
um pacote nomeado, as classes personalizadas precisam ser
postas em pacotes nomeados, de forma que possam ser
importadas pela JSP usando a diretiva page import
• Exemplo
Declarações JSP
• Se você tiver muitas instruções JAVA em seu scriptlet, isso
pode se tornar confuso e dificil de gerenciar
• Existem duas formas de organizar uma grande quantidade de
código JAVA no scriptlet
• Declarações JSP
• Etiquetas JSP
Declarações JSP
• Declarações JSP
• São etiquetas que consistem no par <%! %>, com uma ou mais
declarações de variáveis JAVA e/ou definições de métodos
entre elas
• Permitem que especifique quaisquer atributos e/ou métodos
que possa chamar a partir dos scriptlets e expressões
• Variáveis que precisam ser compartilhadas por scriptlets
podem ser incluídas dentro de declarações
• Exemplo
Declarações JSP
• Se você abrir o arquivo JSP, notará que a declaração ficou bem
no início da classe servlet
• Além disso, o código de transferência de HTML em
_jspService() invoca o método getDate() declarado como parte
do servlet
• Declarações de variáveis em scriptlets permanecem dentro do
método _jspService() na conversão
• Variáveis definidas dentro de uma declaração são instanciadas
apenas uma vez, após a primeira solicitação do servlet. Se
você tentar atualizar uma página, isto poderá não funcionar
Declarações JSP
• Métodos escritos em uma declaração não podem ser
compartilhados entre JSPs
• Se mais de um JSP precisar de um método específico, a
declaração com esse método deverá ser repetida para todas
as páginas que precisar dele
• Alterações feitas em um método em uma JSP teriam de ser
levadas para a outra JSP
• Isto não é bom para a manutenção do sistema
• É recomendável NÃO usar declarações em JSPs

Mais conteúdo relacionado

Mais procurados

Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com AngularElmano Cavalcanti
 
Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento Sérgio Souza Costa
 
diagrama de componentes
diagrama de componentesdiagrama de componentes
diagrama de componenteselliando dias
 
Ferramenta de apoio a gerência de configuração de software
Ferramenta de apoio a gerência de configuração de softwareFerramenta de apoio a gerência de configuração de software
Ferramenta de apoio a gerência de configuração de softwareelliando dias
 
JavaScript - Introdução com Orientação a Objetos
JavaScript - Introdução com Orientação a ObjetosJavaScript - Introdução com Orientação a Objetos
JavaScript - Introdução com Orientação a ObjetosEduardo Mendes
 
02 - Orientação a objetos e revisão de C# v1.5
02 - Orientação a objetos e revisão de C# v1.502 - Orientação a objetos e revisão de C# v1.5
02 - Orientação a objetos e revisão de C# v1.5César Augusto Pessôa
 
Teste de software - aula 01 (motivação)
Teste de software - aula 01 (motivação)Teste de software - aula 01 (motivação)
Teste de software - aula 01 (motivação)Elmano Cavalcanti
 
Introdução básica ao JavaScript
Introdução básica ao JavaScriptIntrodução básica ao JavaScript
Introdução básica ao JavaScriptCarlos Eduardo Kadu
 
Apresentação maven
Apresentação mavenApresentação maven
Apresentação mavenAndré Justi
 
Sistemas de controle de versão
Sistemas de controle de versãoSistemas de controle de versão
Sistemas de controle de versãoMarcos Pessoa
 
Teste de Software Introdução à Qualidade
Teste de Software Introdução à Qualidade Teste de Software Introdução à Qualidade
Teste de Software Introdução à Qualidade Camilo Ribeiro
 
Swagger - make your API accessible
Swagger - make your API accessibleSwagger - make your API accessible
Swagger - make your API accessibleVictor Trakhtenberg
 
X-Zone - Garantia da Qualidade de Software
X-Zone - Garantia da Qualidade de SoftwareX-Zone - Garantia da Qualidade de Software
X-Zone - Garantia da Qualidade de SoftwareAlexandreBartie
 
Qualidade de Software - Introdução
Qualidade de Software - Introdução Qualidade de Software - Introdução
Qualidade de Software - Introdução Elaine Cecília Gatto
 

Mais procurados (20)

Introdução à Programação Web com Angular
Introdução à Programação Web com AngularIntrodução à Programação Web com Angular
Introdução à Programação Web com Angular
 
Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento
 
Aula 2 - Processos de Software
Aula 2 - Processos de SoftwareAula 2 - Processos de Software
Aula 2 - Processos de Software
 
diagrama de componentes
diagrama de componentesdiagrama de componentes
diagrama de componentes
 
Introdução ao HTML e CSS
Introdução ao HTML e CSSIntrodução ao HTML e CSS
Introdução ao HTML e CSS
 
What is Swagger?
What is Swagger?What is Swagger?
What is Swagger?
 
Ferramenta de apoio a gerência de configuração de software
Ferramenta de apoio a gerência de configuração de softwareFerramenta de apoio a gerência de configuração de software
Ferramenta de apoio a gerência de configuração de software
 
JavaScript - Introdução com Orientação a Objetos
JavaScript - Introdução com Orientação a ObjetosJavaScript - Introdução com Orientação a Objetos
JavaScript - Introdução com Orientação a Objetos
 
02 - Orientação a objetos e revisão de C# v1.5
02 - Orientação a objetos e revisão de C# v1.502 - Orientação a objetos e revisão de C# v1.5
02 - Orientação a objetos e revisão de C# v1.5
 
Teste de software - aula 01 (motivação)
Teste de software - aula 01 (motivação)Teste de software - aula 01 (motivação)
Teste de software - aula 01 (motivação)
 
Introdução básica ao JavaScript
Introdução básica ao JavaScriptIntrodução básica ao JavaScript
Introdução básica ao JavaScript
 
Curso de Desenvolvimento Web - Módulo 01 - HTML
Curso de Desenvolvimento Web - Módulo 01 - HTMLCurso de Desenvolvimento Web - Módulo 01 - HTML
Curso de Desenvolvimento Web - Módulo 01 - HTML
 
Apresentação maven
Apresentação mavenApresentação maven
Apresentação maven
 
Front End x Back End
Front End x Back EndFront End x Back End
Front End x Back End
 
Sistemas de controle de versão
Sistemas de controle de versãoSistemas de controle de versão
Sistemas de controle de versão
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
Teste de Software Introdução à Qualidade
Teste de Software Introdução à Qualidade Teste de Software Introdução à Qualidade
Teste de Software Introdução à Qualidade
 
Swagger - make your API accessible
Swagger - make your API accessibleSwagger - make your API accessible
Swagger - make your API accessible
 
X-Zone - Garantia da Qualidade de Software
X-Zone - Garantia da Qualidade de SoftwareX-Zone - Garantia da Qualidade de Software
X-Zone - Garantia da Qualidade de Software
 
Qualidade de Software - Introdução
Qualidade de Software - Introdução Qualidade de Software - Introdução
Qualidade de Software - Introdução
 

Destaque

Programacao Com Asp I
Programacao Com Asp   IProgramacao Com Asp   I
Programacao Com Asp Iguest3118b2
 
Introdução à Servlets e JSP
Introdução à Servlets e JSPIntrodução à Servlets e JSP
Introdução à Servlets e JSPledsifes
 
Introdução à programação para web com Java - Módulo 03: Conceitos básicos de...
Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de...Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de...
Introdução à programação para web com Java - Módulo 03: Conceitos básicos de...Professor Samuel Ribeiro
 
Desenvolvimento web em java com JSP e Servlets
Desenvolvimento web em java com JSP e ServletsDesenvolvimento web em java com JSP e Servlets
Desenvolvimento web em java com JSP e ServletsIgo Coelho
 
Elementos de script en JSP
Elementos de script en JSPElementos de script en JSP
Elementos de script en JSPjubacalo
 
Introdução ao Desenvolvimento de aplicações WEB com JSP
Introdução ao Desenvolvimento de aplicações WEB com JSPIntrodução ao Desenvolvimento de aplicações WEB com JSP
Introdução ao Desenvolvimento de aplicações WEB com JSPManoel Afonso
 
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 - 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
 
4. Liferay JSP Portlets
4. Liferay JSP Portlets4. Liferay JSP Portlets
4. Liferay JSP PortletsSEA Tecnologia
 

Destaque (18)

Mapeamento objeto relacional
Mapeamento objeto relacionalMapeamento objeto relacional
Mapeamento objeto relacional
 
Asp
AspAsp
Asp
 
Programacao Com Asp I
Programacao Com Asp   IProgramacao Com Asp   I
Programacao Com Asp I
 
Servlets e JSP
Servlets e JSPServlets e JSP
Servlets e JSP
 
Servlets e JSP
Servlets e JSPServlets e JSP
Servlets e JSP
 
Introdução à Servlets e JSP
Introdução à Servlets e JSPIntrodução à Servlets e JSP
Introdução à Servlets e JSP
 
Servlets e jsp
Servlets e jspServlets e jsp
Servlets e jsp
 
Apresentação JSF
Apresentação JSFApresentação JSF
Apresentação JSF
 
jsp-intro
jsp-introjsp-intro
jsp-intro
 
JSP: Etiquetas
JSP: EtiquetasJSP: Etiquetas
JSP: Etiquetas
 
Introdução à programação para web com Java - Módulo 03: Conceitos básicos de...
Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de...Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de...
Introdução à programação para web com Java - Módulo 03: Conceitos básicos de...
 
Curso de JSP
Curso de JSPCurso de JSP
Curso de JSP
 
Desenvolvimento web em java com JSP e Servlets
Desenvolvimento web em java com JSP e ServletsDesenvolvimento web em java com JSP e Servlets
Desenvolvimento web em java com JSP e Servlets
 
Elementos de script en JSP
Elementos de script en JSPElementos de script en JSP
Elementos de script en JSP
 
Introdução ao Desenvolvimento de aplicações WEB com JSP
Introdução ao Desenvolvimento de aplicações WEB com JSPIntrodução ao Desenvolvimento de aplicações WEB com JSP
Introdução ao Desenvolvimento de aplicações WEB com 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
 
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
 
4. Liferay JSP Portlets
4. Liferay JSP Portlets4. Liferay JSP Portlets
4. Liferay JSP Portlets
 

Semelhante a JSP Introdução Aplicações Web

Semelhante a JSP Introdução Aplicações Web (20)

Revisao Geral
Revisao GeralRevisao Geral
Revisao Geral
 
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
 
Tag Libraries
Tag LibrariesTag Libraries
Tag Libraries
 
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
 
Tag Libraries e JSTL
Tag Libraries e JSTLTag Libraries e JSTL
Tag Libraries e JSTL
 
Java Server Pages
Java Server PagesJava Server Pages
Java Server Pages
 
Trabalho ProgramaçãO Comercial Ii
Trabalho ProgramaçãO Comercial IiTrabalho ProgramaçãO Comercial Ii
Trabalho ProgramaçãO Comercial Ii
 
Servlet jsp tomcat 8
Servlet jsp tomcat 8Servlet jsp tomcat 8
Servlet jsp tomcat 8
 
Java Server Pages
Java Server PagesJava Server Pages
Java Server Pages
 
Como criar Custom Tags
Como criar Custom TagsComo criar Custom Tags
Como criar Custom Tags
 
JSPs Etiquetas
JSPs EtiquetasJSPs Etiquetas
JSPs Etiquetas
 
servlet-requisicoes
servlet-requisicoesservlet-requisicoes
servlet-requisicoes
 
Apresentação JAVA 1
Apresentação JAVA 1Apresentação JAVA 1
Apresentação JAVA 1
 
JSPs parte 1
JSPs parte 1JSPs parte 1
JSPs parte 1
 
Tutorial JSP parte 1
Tutorial JSP parte 1Tutorial JSP parte 1
Tutorial JSP parte 1
 
xDocLet - Geração de código com xdoclet
xDocLet - Geração de código com xdocletxDocLet - Geração de código com xdoclet
xDocLet - Geração de código com xdoclet
 
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
 
Uma abordagem ao Java EE 6
Uma abordagem ao Java EE 6Uma abordagem ao Java EE 6
Uma abordagem ao Java EE 6
 
Curso de Desenvolvimento de Sistemas Web - (X)HTML
Curso de Desenvolvimento de Sistemas Web - (X)HTMLCurso de Desenvolvimento de Sistemas Web - (X)HTML
Curso de Desenvolvimento de Sistemas Web - (X)HTML
 
Apresentação Java Web Si Ufc Quixadá
Apresentação Java Web Si Ufc QuixadáApresentação Java Web Si Ufc Quixadá
Apresentação Java Web Si Ufc Quixadá
 

Mais de Elaine Cecília Gatto

A influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaA influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaElaine Cecília Gatto
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaElaine Cecília Gatto
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Elaine Cecília Gatto
 
Apresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCApresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCElaine Cecília Gatto
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxElaine Cecília Gatto
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Elaine Cecília Gatto
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarElaine Cecília Gatto
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesElaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...Elaine Cecília Gatto
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationElaine Cecília Gatto
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfElaine Cecília Gatto
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Elaine Cecília Gatto
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...Elaine Cecília Gatto
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoElaine Cecília Gatto
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsElaine Cecília Gatto
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoElaine Cecília Gatto
 

Mais de Elaine Cecília Gatto (20)

A influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etariaA influência da Tecnologia em cada faixa etaria
A influência da Tecnologia em cada faixa etaria
 
Inteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à MedicinaInteligência Artificial Aplicada à Medicina
Inteligência Artificial Aplicada à Medicina
 
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
Além do Aprendizado Local e Global: Particionando o espaço de classes em prob...
 
Apresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPCApresentação da minha tese de doutorado no EPPC
Apresentação da minha tese de doutorado no EPPC
 
entrevista r7.pdf
entrevista r7.pdfentrevista r7.pdf
entrevista r7.pdf
 
Como a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptxComo a pesquisa científica impacta o mundo real.pptx
Como a pesquisa científica impacta o mundo real.pptx
 
Empoderamento Feminino
Empoderamento FemininoEmpoderamento Feminino
Empoderamento Feminino
 
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...Explorando correlações entre rótulos para o particionamento do espaço de rótu...
Explorando correlações entre rótulos para o particionamento do espaço de rótu...
 
Community Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCarCommunity Detection for Multi-Label Classification - Seminários UFSCar
Community Detection for Multi-Label Classification - Seminários UFSCar
 
Classificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de CorrelaçõesClassificação Multirrótulo: Aprendizado de Correlações
Classificação Multirrótulo: Aprendizado de Correlações
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Community Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label ClassificationCommunity Detection Method for Multi-Label Classification
Community Detection Method for Multi-Label Classification
 
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdfMulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
Mulheres na Campus Party assumir o feminismo ou não – Blogueiras Feministas.pdf
 
Curtinhas de sábado.pdf
Curtinhas de sábado.pdfCurtinhas de sábado.pdf
Curtinhas de sábado.pdf
 
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
Explorando Correlações entre Rótulos usando Métodos de Detecção de Comu...
 
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
EXPLORANDO CORRELAÇÕES PARA O PARTICIONAMENTO DO ESPAÇO DE RÓTULOS EM PROBLEM...
 
Pipeline desdobramento escalonamento
Pipeline desdobramento escalonamentoPipeline desdobramento escalonamento
Pipeline desdobramento escalonamento
 
Cheat sheet Mips 32 bits
Cheat sheet Mips 32 bitsCheat sheet Mips 32 bits
Cheat sheet Mips 32 bits
 
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bitsResumo das Instruções de Desvio Incondicionais MIPS 32 bits
Resumo das Instruções de Desvio Incondicionais MIPS 32 bits
 
Como descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcaçãoComo descobrir e classificar coisas usando machine learning sem compilcação
Como descobrir e classificar coisas usando machine learning sem compilcação
 

Último

Modelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e TaniModelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e TaniCassio Meira Jr.
 
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxAD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxkarinedarozabatista
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividadeMary Alvarenga
 
Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029Centro Jacques Delors
 
UFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdfUFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdfManuais Formação
 
Simulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfSimulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfEditoraEnovus
 
Orações subordinadas substantivas (andamento).pptx
Orações subordinadas substantivas (andamento).pptxOrações subordinadas substantivas (andamento).pptx
Orações subordinadas substantivas (andamento).pptxKtiaOliveira68
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxleandropereira983288
 
A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesMary Alvarenga
 
Bullying - Atividade com caça- palavras
Bullying   - Atividade com  caça- palavrasBullying   - Atividade com  caça- palavras
Bullying - Atividade com caça- palavrasMary Alvarenga
 
Simulado 2 Etapa - 2024 Proximo Passo.pdf
Simulado 2 Etapa  - 2024 Proximo Passo.pdfSimulado 2 Etapa  - 2024 Proximo Passo.pdf
Simulado 2 Etapa - 2024 Proximo Passo.pdfEditoraEnovus
 
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxOsnilReis1
 
Programa de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades MotorasPrograma de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades MotorasCassio Meira Jr.
 
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Mary Alvarenga
 
ANTIGUIDADE CLÁSSICA - Grécia e Roma Antiga
ANTIGUIDADE CLÁSSICA - Grécia e Roma AntigaANTIGUIDADE CLÁSSICA - Grécia e Roma Antiga
ANTIGUIDADE CLÁSSICA - Grécia e Roma AntigaJúlio Sandes
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024Jeanoliveira597523
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditaduraAdryan Luiz
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfAdrianaCunha84
 

Último (20)

Modelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e TaniModelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e Tani
 
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptxAD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
AD2 DIDÁTICA.KARINEROZA.SHAYANNE.BINC.ROBERTA.pptx
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividade
 
Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029Apresentação | Eleições Europeias 2024-2029
Apresentação | Eleições Europeias 2024-2029
 
UFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdfUFCD_10392_Intervenção em populações de risco_índice .pdf
UFCD_10392_Intervenção em populações de risco_índice .pdf
 
Simulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdfSimulado 1 Etapa - 2024 Proximo Passo.pdf
Simulado 1 Etapa - 2024 Proximo Passo.pdf
 
Orações subordinadas substantivas (andamento).pptx
Orações subordinadas substantivas (andamento).pptxOrações subordinadas substantivas (andamento).pptx
Orações subordinadas substantivas (andamento).pptx
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptx
 
A Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das MãesA Arte de Escrever Poemas - Dia das Mães
A Arte de Escrever Poemas - Dia das Mães
 
Bullying - Atividade com caça- palavras
Bullying   - Atividade com  caça- palavrasBullying   - Atividade com  caça- palavras
Bullying - Atividade com caça- palavras
 
Simulado 2 Etapa - 2024 Proximo Passo.pdf
Simulado 2 Etapa  - 2024 Proximo Passo.pdfSimulado 2 Etapa  - 2024 Proximo Passo.pdf
Simulado 2 Etapa - 2024 Proximo Passo.pdf
 
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptxATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
ATIVIDADE AVALIATIVA VOZES VERBAIS 7º ano.pptx
 
Programa de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades MotorasPrograma de Intervenção com Habilidades Motoras
Programa de Intervenção com Habilidades Motoras
 
Em tempo de Quaresma .
Em tempo de Quaresma                            .Em tempo de Quaresma                            .
Em tempo de Quaresma .
 
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
 
ANTIGUIDADE CLÁSSICA - Grécia e Roma Antiga
ANTIGUIDADE CLÁSSICA - Grécia e Roma AntigaANTIGUIDADE CLÁSSICA - Grécia e Roma Antiga
ANTIGUIDADE CLÁSSICA - Grécia e Roma Antiga
 
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA -
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA      -XI OLIMPÍADAS DA LÍNGUA PORTUGUESA      -
XI OLIMPÍADAS DA LÍNGUA PORTUGUESA -
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024
 
trabalho wanda rocha ditadura
trabalho wanda rocha ditaduratrabalho wanda rocha ditadura
trabalho wanda rocha ditadura
 
William J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdfWilliam J. Bennett - O livro das virtudes para Crianças.pdf
William J. Bennett - O livro das virtudes para Crianças.pdf
 

JSP Introdução Aplicações Web

  • 2. Introdução Uma página HTML simplesmente é retornada como está ao cliente, sem processamento pelo servidor, e, se isso acontecer para uma página que contenha código java nela, o navegador não sérá capaz de decifrar a parte JAVA do conteúdo da página. É exatamente isto que uma JSP permite que o desenvolvedor faça A página tem uma extensão JSP que alerta ao servidor que ela pode ter código JAVA que precisa ser processado e, ao mesmo tempo, permite que o restante do conteúdo HTML permaneça intacto.
  • 3. Introdução Você pode ter uma página JSP que contenha apenas código HTML. Um página JSP consiste em código JAVA incorporado em HTML, portanto ela se assemelha bem a um arquivo HTML puro, com habituais etiquetas HTML, acrescido de etiquetas especiais que englobam o código JAVA. Cada trecho de código JAVA é colocado entre etiquetas especiais que alertam o servidor para o código embutido que precisa ser compilado, processado e convertido em conteúdo dinâmico HTML equivalente
  • 4. Introdução Ao examinar o código JAVA embutio, o servidor automaticamente cria um novo SERVLET, nos bastidores, um por JSP, e converte o código JAVA embutido em código equivalente de tranferência de HTML. Código JAVA é opcional em páginas JSP. O que o TOMCAT faz? Uma simples página JSP dá muito trabalho ao container. Vejamos o que ocorre a seguir: O TOMCAT “viu” que a solicitação era por um arquivo com uma extensão .JSP e, assim preparou-se para criar um SERVLET.
  • 5. Introdução Para cada arquivo JSP que for solicitado, o TOMCAT efetivamente criar um novo arquivo .JAVA, em tempo de execução, com o nome derivado do nome do seru arquivo JSP e o compila por conta própria para criar um arquivo SERVLET.CLASS Ele coloca todas essas classes SERVLET criadas por ele próprio em uma pasta chamada CATALINA (padrão) Várias subpastas são criadas para executar a página JSP:
  • 7. Elementos JSP • Etiquetas especiais são tecnicamente chamadas de ELEMENTOS. Sintaxe dos elementos JSP: <elemento_etiqueta nomeAtributo1=“valor1” nomeAtributo2=“valor2” ...> ........ </elemento_etiqueta> • Os atributos represetam uma lista de pares nome/valor que se aplicam ao elemento_etiqueta, que podem ser ou não obrigatórios para cada etiqueta definida. Quando NÃO obrigatórios, assumem valores padrão.
  • 8. Elementos JSP • Para cada finalidade, exite um elemento apropriado de JSP. Exitem 5 tipos diferentes de elementos: • Expressões • Scriptlets • Declarações • Diretivas • Elementos de ação • Scriptlets e declarações são referidos como ELEMENTOS DE SCRIPTING
  • 9. Expressões JSP • Uma forma de inserir código JAVA em JSP é usar uma EXPRESSÃO JSP • Uma EXPRESSÃO não é uma INSTRUÇÃO • Uma EXPRESSÃO JAVA é delimitada pelas etiquetas de expressão <%= %>
  • 10. Expressões JSP • As ETIQUETAS DE EXPRESSÃO pegam a STRING delimitada por ela e a transferem usando uma INSTRUÇÃO OUT.PRINT() • Se a EXPRESSÃO consistir em um OBJETO, JAVA invocará o método TOSTRING() a partir da superclasse global OBJECT. • A etiqueta de expressão, portanto, deve ter no mínimo uma string delimitada
  • 11. Expressões JSP • A expressão é formada por uma ou mais variáveis, não uma instrução, portanto, a etiqueta de expressão <%=%> não termina com ponto e vírgula • Exemplo: exibindo data e hora corrente • Para apresentar a data em JAVA devemos usar new java.util.Date(); • Isto gera um objeto do tipo DATE em Java. Quando o método TOSTRING() for chamado com um objeto do tipo DATE, ele retornará a STRING equivalente a este objeto
  • 12. Expressões JSP • O código fonte abaixo (EXEMPLO 1 JSP) ensina como exibir o conteúdo atual do OBJETO DATE como uma STRING <%@page contentType="text/html" pageEncoding="UTF-8" import="java.util.*"%> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title> :: EXEMPLO 1 - DATA :: </title> </head> <body> <h1> :: EXEMPLO 1 - DATA :: </h1> <p> <font face="TAHOMA" color="#green"> A hora atual é: <b> <%= new java.util.Date()%> </font> </b> </p> </body> </html>
  • 13. Expressões JSP • Código JAVA foi embutido na JSP • A solicitação vai primeiro ao servidor TOMCAT, que procurará por quaisquer elementos • Se ele encontrar, avaliará as variáveis incluídas na etiqueta e inserirá a STRING equivalente nessa posição • OUT.PRINT() é usado para mostrar a string ao cliente, no caso, o navegador
  • 14. Expressões JSP • Vá até a pasta • C:UsersCissaAppDataRoamingNetBeans8.0.2apache- tomcat- 8.0.15.0_baseworkCatalinalocalhostExemplo1orgapache jsp • Haverão dois arquivos: index_jsp.java e index_jsp.class • Olhe o método _JSPSERVICE() • O tomcat converteu a expressão em uma instrução JAVA equivalente
  • 15. Scriptlets • Expressões são limitadas em sua capacidade para incorporar lógica complexa de negócios • Expressões podem apenas transferir valores de algumas variáveis ou expressões, mas não podem realizar processamento de lógica de negócios • SCRIPTLETs fazem isso: instruções JAVA incluídas entre as etiquetas especiais <% %> • Portanto, qual a diferença nas tags SCRIPTLETS e EXPRESSÕES?
  • 16. Scriptlets • Scriptlets em instruções válidas em JAVA, portanto, devem terminar com ponto e vírgula • SCRIPTLETS são um meio para processar dados ou determinar valores de váriaveis necessárias para a JSP exibir como conteúdo HTML dinâmico • EXEMPLO: alterando a forma de apresentar a data e hora usando EXPRESSÕES + SCRIPTLETS
  • 17. Scriptlets • Scriptlets em instruções válidas em JAVA, portanto, devem terminar com ponto e vírgula • SCRIPTLETS são um meio para processar dados ou determinar valores de váriaveis necessárias para a JSP exibir como conteúdo HTML dinâmico • EXEMPLO: alterando a forma de apresentar a data e hora usando EXPRESSÕES + SCRIPTLETS
  • 18. Exemplo 2 <%@page contentType="text/html" pageEncoding="UTF-8" import="java.util.*"%> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title> :: EXEMPLO 2 - DATA :: </title> </head> <% java.util.Date horaAtual = new java.util.Date(); String hora = horaAtual.toString(); %> <body> <h1> :: EXEMPLO 2 - DATA ::</h1> <p> <font face="TAHOMA" color="#green"> A hora atual é: <b> <%= hora %> </font> </b> </p> </body> </html>
  • 19. Exemplo 2 • C:UsersCissaAppDataRoamingNetBeans8.0.2apache- tomcat- 8.0.15.0_baseworkCatalinalocalhostExemplo2orgapache jsp • O código java foi passado da forma como é! • Portanto, o conteúdo do SCRIPTLET permanece intacto quando é convertido para um servlet • As etiquetas de expressão são todas convertidas
  • 20. Diretivas • <%@ %>  diretivas • Sintaxe geral: <%@ diretiva atributo1 = “valor1”, atributo2 = “valor2”, ... %> • Três principais tipos de diretivas: • Page • Include • Taglib
  • 21. Diretivas • A diretiva PAGE permite que classes sejam importadas para o JSP usando o atributo IMPORT • Import recebe uma lista de classes que devem ser separadas por vírgulas • Os nomes das classes devem ser totalmente qualificados na declaração import. Exemplo: java.util.Date (e não apenas Date) • EXEMPLO NETBEANS
  • 22. Importando Classes Personalizadas em sua JSP • As classes que você cria também podem ser importadas na diretiva page • Para isto, basta saber o caminho exato do arquivo .class • Como JSPs são compilados em um SERVLET que pertence a um pacote nomeado, as classes personalizadas precisam ser postas em pacotes nomeados, de forma que possam ser importadas pela JSP usando a diretiva page import • Exemplo
  • 23. Declarações JSP • Se você tiver muitas instruções JAVA em seu scriptlet, isso pode se tornar confuso e dificil de gerenciar • Existem duas formas de organizar uma grande quantidade de código JAVA no scriptlet • Declarações JSP • Etiquetas JSP
  • 24. Declarações JSP • Declarações JSP • São etiquetas que consistem no par <%! %>, com uma ou mais declarações de variáveis JAVA e/ou definições de métodos entre elas • Permitem que especifique quaisquer atributos e/ou métodos que possa chamar a partir dos scriptlets e expressões • Variáveis que precisam ser compartilhadas por scriptlets podem ser incluídas dentro de declarações • Exemplo
  • 25. Declarações JSP • Se você abrir o arquivo JSP, notará que a declaração ficou bem no início da classe servlet • Além disso, o código de transferência de HTML em _jspService() invoca o método getDate() declarado como parte do servlet • Declarações de variáveis em scriptlets permanecem dentro do método _jspService() na conversão • Variáveis definidas dentro de uma declaração são instanciadas apenas uma vez, após a primeira solicitação do servlet. Se você tentar atualizar uma página, isto poderá não funcionar
  • 26. Declarações JSP • Métodos escritos em uma declaração não podem ser compartilhados entre JSPs • Se mais de um JSP precisar de um método específico, a declaração com esse método deverá ser repetida para todas as páginas que precisar dele • Alterações feitas em um método em uma JSP teriam de ser levadas para a outra JSP • Isto não é bom para a manutenção do sistema • É recomendável NÃO usar declarações em JSPs