Introdução
JSP Standard Template Library (JSTL) é um novo componente desenvolvido para JSP lançado pela SUN. JSTL permite desenvolver páginas JSP usando tags em vez do código scriptlet com o qual a maioria dos programadores JSP está acostumada. JSTL pode fazer quase tudo que o código scriptlet JSP tradicional pode fazer. Você pode estar se perguntando: por que precisamos de outra linguagem de geração de HTML?
STL permite que programadores JSP programem usando tags em vez de código JAVA. Para mostrar por que isso é superior, um exemplo será dado abaixo. Examinaremos uma página JSP muito simples que conta de 1 a 10. Verificaremos através de dois métodos, um é baseado em scriptlet JSP e o outro é JSTL. Quando este exemplo de página de contador é escrito usando um scriptlet JSP, a página JSP se parece com isto:
<html>
<cabeça>
<title>Conte até 10 em scriptlet JSP</title>
</head>
<corpo>
<%
para(int i=1;i<=10;i++)
{%>
<%=i%><br/>
<%
}
%>
</body>
</html>
Como você pode ver no exemplo acima, o código-fonte da página gerado usando código scriptlet conterá uma mistura de tags HTML e instruções JAVA. Esta abordagem de programação híbrida não é a melhor abordagem pelas seguintes razões.
O principal motivo é sua legibilidade. Essa legibilidade depende principalmente de humanos e computadores. JSTL permite que os programadores visualizem uma página que contém apenas HTML completo e tags semelhantes a HTML.
O código do scriptlet SP não é legível para humanos. Essa mistura de scriptlets e código HTML também é difícil de ler pelos computadores. Especialmente para as ferramentas HTML oficiais, como Dreamweaver e Microsoft FrontPage, a falta de intuição é ainda mais proeminente. Atualmente, a maioria das ferramentas HTML oficiais isolam o código scriptlet JSP na forma de blocos não editáveis. Esse tipo de ferramenta HTML oficial geralmente não pode modificar diretamente o código do scriptlet JSP.
O código a seguir mostra como esse exemplo de contador pode ser escrito usando JSTL. Como você pode ver, esta listagem de código é imutável, apenas uma tag é usada. Tags HTML e JSTL são misturadas para produzir este programa.
<%@ taglib uri=" http://java.sun.com/jstl/core " prefix="c" %>
<html>
<cabeça>
<title>Exemplo de contagem até 10 (usando JSTL)</title>
</head>
<corpo>
<c:forEach var="i" start="1" end="10" step="1">
<c:out value="${i}" />
<br />
</c:forEach>
</body>
</html>
Ao examinar o código do exemplo acima, você verá que a página JSP contém apenas tags. O código acima usa tags HTML como <head> e <br>. O uso dessa tag não está limitado a tags HTML. Este código também pode usar tags JSTL como <c:forEach> e <c:out>. Neste artigo, serão apresentados alguns princípios básicos do JSTL.
Instalar JSTL
Para usar JSTL, você deve ter um contêiner JSP 1.2 (ou superior) instalado. O contêiner JSP mais comum é o Apache Tomcat. Você pode baixá-lo em http://jakarta.apache.org/tomcat/ . O Tomcat autônomo permite que você use código de scriptlet JSP normal. Para usar JSTL, você deve instalar o JSTL no Tomcat. O URL principal do JSTL é http://java.sun.com/products/jsp/jstl/ . Para usar JSTL, você deve descompactar este arquivo e instalá-lo no local correto do Tomcat.
Para instalar o JSTL no Tomcat, há três etapas:
Copie o arquivo JSTL JAR para o diretório lib do Tomcat
Se você estiver usando o Windows, o local mais provável do diretório lib é C:Program FilesApache Tomcat 4.0webapps ROOT. WEB-INFlib. Você deve copiar esses pacotes JAR para o diretório JAR do Tomcat.
Copie os arquivos JSTL TLD para o diretório web-inf do Tomcat
Ao examinar os arquivos de distribuição JSTL, você deve notar que 8 arquivos terminam com a extensão TLD. Todos os 8 arquivos devem ser copiados para o diretório web-inf.
Modifique o arquivo web.xml para incluir esses arquivos TLD.
Finalmente, você deve modificar seu web.xml e adicionar 8 entradas de biblioteca de tags. Os itens da tabela que precisam ser adicionados são os seguintes:
<taglib>
<taglib-uri>http://java.sun.com/jstl/fmt</taglib-uri>
<taglib-location>/WEB-INF/fmt.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://java.sun.com/jstl/fmt-rt</taglib-uri>
<taglib-location>/WEB-INF/fmt-rt.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://java.sun.com/jstl/core</taglib-uri>
<taglib-location>/WEB-INF/c.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://java.sun.com/jstl/core-rt</taglib-uri>
<taglib-location>/WEB-INF/c-rt.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://java.sun.com/jstl/sql</taglib-uri>
<taglib-location>/WEB-INF/sql.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://java.sun.com/jstl/sql-rt</taglib-uri>
<taglib-location>/WEB-INF/sql-rt.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://java.sun.com/jstl/x</taglib-uri>
<taglib-location>/WEB-INF/x.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://java.sun.com/jstl/x-rt</taglib-uri>
<taglib-location>/WEB-INF/x-rt.tld</taglib-location>
</taglib>
Depois de concluir as três etapas acima, você está pronto para testar a instalação do JSTL. Isso pode ser verificado criando uma página JSP contendo JSTL. Um dos programas de exemplo mais simples é o programa contador acima. Você deve colocá-lo em seu diretório webroot (C:Program FilesApache Tomcat 5.0webappsROOT). Depois que o Tomcat for iniciado, você poderá visualizar esta página navegando até http://127.0.0.1:8080/count.jsp .
Se você não instalou o JSTL corretamente, a mensagem de erro poderá não aparecer. Se o JSTL não conseguir interpretar o significado de suas tags, ele será ignorado pelo navegador da web. O navegador da web interpretará essas tags HTML desconhecidas. A maioria dos navegadores simplesmente ignora essas tags HTML desconhecidas.
Continua...
Traduzido por Caiyi0903(Willpower),19/02/2004