JSP Standard Tag Library (JSTL) é uma coleção de tags JSP que encapsula as funções básicas comuns de aplicativos JSP.
JSTL oferece suporte a tarefas estruturadas comuns, como iteração, julgamento condicional, operações de documentos XML, tags de internacionalização e tags SQL. Além disso, também fornece uma estrutura para usar tags customizadas integradas ao JSTL.
De acordo com as funções fornecidas pelas tags JSTL, elas podem ser divididas em 5 categorias.
tags principais
formatação de tags
Etiqueta SQL
Etiqueta XML
Funções JSTL
As etapas para instalar a biblioteca JSTL no Apache Tomcat são as seguintes:
O pacote binário (jakarta-taglibs-standard-current.zip) baixado da biblioteca de tags padrão do Apache. Endereço de download: http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/
Baixe o pacote jakarta-taglibs-standard-1.1.1.zip, descompacte-o e copie os dois arquivos jar em jakarta-taglibs-standard-1.1.1/lib/: arquivos standard.jar e jstl.jar para /WEB- INF /lib/under.
A seguir adicionamos a seguinte configuração no arquivo web.xml:
…
<
jsp
-
configuração
>
<taglib>
<
taglib
-
uri
>
http
:
//java.sun.com/jstl/fmt</taglib-uri>
<
taglib
-
localização
>
/WEB-INF/
fmt
.
tld
</
taglib
-
localização
>
</
taglib
>
<taglib>
<
taglib
-
uri
>
http
:
//java.sun.com/jstl/fmt-rt</taglib-uri>
<
taglib
-
localização
>
/WEB-INF/
fmt
-
rt
.
tld
</
taglib
-
localização
>
</
taglib
>
<taglib>
<
taglib
-
uri
>
http
:
//java.sun.com/jstl/core</taglib-uri>
<
taglib
-
localização
>
/WEB-INF/
c
.
tld
</
taglib
-
localização
>
</
taglib
>
<taglib>
<
taglib
-
uri
>
http
:
//java.sun.com/jstl/core-rt</taglib-uri>
<
taglib
-
localização
>
/WEB-INF/
c
-
rt
.
tld
</
taglib
-
localização
>
</
taglib
>
<taglib>
<
taglib
-
uri
>
http
:
//java.sun.com/jstl/sql</taglib-uri>
<
taglib
-
localização
>
/WEB-INF/
SQL
.
tld
</
taglib
-
localização
>
</
taglib
>
<taglib>
<
taglib
-
uri
>
http
:
//java.sun.com/jstl/sql-rt</taglib-uri>
<
taglib
-
localização
>
/WEB-INF/
SQL
-
rt
.
tld
</
taglib
-
localização
>
</
taglib
>
<taglib>
<
taglib
-
uri
>
http
:
//java.sun.com/jstl/x</taglib-uri>
<
taglib
-
localização
>
/WEB-INF/
x
.
tld
</
taglib
-
localização
>
</
taglib
>
<taglib>
<
taglib
-
uri
>
http
:
//java.sun.com/jstl/x-rt</taglib-uri>
<
taglib
-
localização
>
/WEB-INF/
x
-
rt
.
tld
</
taglib
-
localização
>
</
taglib
>
</
jsp
-
configuração
>
…
Para usar qualquer biblioteca, você deve incluir a tag <taglib> no cabeçalho de cada arquivo JSP.
Tags principais são as tags JSTL mais comumente usadas. A sintaxe para fazer referência à biblioteca principal de tags é a seguinte:
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
Rótulo | descrever |
---|---|
<c:fora> | Usado para exibir dados em JSP, como <%= ... > |
<c:definir> | usado para salvar dados |
<c:remover> | para excluir dados |
<c:captura> | Usado para lidar com exceções que causam erros e armazenar informações de erro |
<c:se> | É o mesmo que se usarmos em programas gerais |
<c:escolher> | É usado apenas como tag pai de <c:when> e <c:otherwise> |
<c:quando> | A subtag de <c:choose> é usada para determinar se a condição é verdadeira. |
<c:caso contrário> | A subtag de <c:choose> é conectada após a tag <c:when> e é executada quando a tag <c:when> é considerada falsa. |
<c:importar> | Recuperar um URL absoluto ou relativo e expor seu conteúdo à página |
<c:forEach> | Tag de iteração básica, aceitando vários tipos de coleção |
<c:forTokens> | Conteúdo separado com base no delimitador especificado e na saída iterativa |
<c:param> | Usado para passar parâmetros para páginas incluídas ou redirecionadas |
<c:redirecionar> | Redirecionar para um novo URL. |
<c:url> | Use parâmetros de consulta opcionais para criar um URL |
Tags de formatação JSTL são usadas para formatar e gerar texto, datas, horas e números. A sintaxe para referenciar a biblioteca de tags de formatação é a seguinte:
<%@
prefixo taglib
=
"fmt"
uri
=
"http://java.sun.com/jsp/jstl/fmt"
%>
Rótulo | descrever |
---|---|
<fmt:formatoNumber> | Formate um número usando o formato ou precisão especificado |
<fmt:parseNumber> | Analisar uma string que representa um número, moeda ou porcentagem |
<fmt:formatData> | Formatar data e hora usando estilo ou padrão especificado |
<fmt:parseDate> | Analisar uma string que representa uma data ou hora |
<fmt:pacote> | Vincular recursos |
<fmt:setLocale> | Área designada |
<fmt:setBundle> | Vincular recursos |
<fmt:fuso horário> | Especifique o fuso horário |
<fmt:setTimeZone> | Especifique o fuso horário |
<fmt:mensagem> | Exibir informações de perfil de recurso |
<fmt:requestEncoding> | Defina a codificação de caracteres da solicitação |
A biblioteca de tags JSTL SQL fornece tags para interagir com bancos de dados relacionais (Oracle, MySQL, SQL Server, etc.). A sintaxe para fazer referência à biblioteca de tags SQL é a seguinte:
<%@taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
Rótulo | descrever |
---|---|
<sql:setDataSource> | Especifique a fonte de dados |
<sql:consulta> | Execute a instrução de consulta SQL |
<sql:atualização> | Execute a instrução de atualização SQL |
<sql:param> | Defina os parâmetros na instrução SQL para o valor especificado |
<sql:dateParam> | Configure o parâmetro de data na instrução SQL para o valor do objeto java.util.Date especificado |
<sql:transação> | Fornece elementos de comportamento de banco de dados aninhados em uma conexão de banco de dados compartilhada para executar todas as instruções como uma transação |
A biblioteca de tags XML JSTL fornece tags para criar e manipular documentos XML. A sintaxe para fazer referência a uma biblioteca de tags XML é a seguinte:
<%@taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %>
Antes de usar a tag xml, você deve copiar os pacotes relacionados a XML e XPath para seu <diretório de instalação do Tomcat>lib:
XercesImpl.jar:
Endereço para download: http://www.apache.org/dist/xerces/j/
xalan.jar:
Endereço para download: http://xml.apache.org/xalan-j/index.html
Rótulo | descrever |
---|---|
<x:fora> | Semelhante a <%= ... >, mas usado apenas em expressões XPath |
<x:analisar> | Analisar dados XML |
<x:definir> | Definir expressão XPath |
<x:se> | Determine a expressão XPath. Se for verdadeira, execute o conteúdo da ontologia, caso contrário, pule a ontologia. |
<x:forEach> | Iterar sobre nós no documento XML |
<x:escolher> | Tags pai de <x:when> e <x:otherwise> |
<x:quando> | A subtag de <x:choose> é usada para julgamento condicional. |
<x:caso contrário> | A subtag de <x:choose> é executada quando <x:when> é considerado falso. |
<x:transformar> | Aplicar transformações XSL a documentos XML |
<x:param> | Usado junto com <x:transform> para definir folhas de estilo XSL |
JSTL contém uma série de funções padrão, a maioria das quais são funções de processamento de strings de uso geral. A sintaxe para referenciar a biblioteca de funções JSTL é a seguinte:
<%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
função | descrever |
---|---|
fn: contém() | Testa se a string de entrada contém a substring especificada |
fn: contémIgnoreCase() | Testa se a string de entrada contém a substring especificada, sem distinção entre maiúsculas e minúsculas |
fn:termina com() | Testa se a string de entrada termina com o sufixo especificado |
fn:escapeXml() | Ignorar caracteres que podem ser usados como tags XML |
fn:indexOf() | Retorna a posição onde a string especificada aparece na string de entrada |
fn:juntar() | Combine os elementos da matriz em uma string e produza-a |
fn:comprimento() | Retorna o comprimento da string |
fn:substituir() | Substitui a posição especificada na string de entrada pela string especificada e retorna |
fn:dividir() | Separe a string com o delimitador especificado e forme uma matriz de substrings e retorne |
fn:iniciaCom() | Testa se a string de entrada começa com o prefixo especificado |
fn:substring() | Retorna um subconjunto de uma string |
fn:substringDepois() | Retorna o subconjunto da string após a substring especificada |
fn:substringBefore() | Retorna o subconjunto da string antes da substring especificada |
fn:toLowerCase() | Converter caracteres de string em minúsculos |
fn:toUpperCase() | Converter caracteres de uma string em letras maiúsculas |
fn:cortar() | Remover caracteres de espaço em branco iniciais |