English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Bibliothèque de balises standard (JSTL) JSP

La bibliothèque de balises standard JSP (JSTL) est une collection de balises JSP qui encapsule les fonctionnalités centrales courantes des applications JSP.

JSTL prend en charge des tâches génériques et structurées, telles que les itérations, les jugements conditionnels, les opérations sur les documents XML, les balises de internationalisation, les balises SQL. En plus de cela, il fournit un cadre pour utiliser des balises personnalisées intégrées à JSTL.

Selon les fonctionnalités fournies par les balises JSTL, elles peuvent être divisées en5catégorie.

  • Balises centrales

  • Balises de formatage

  • Balises SQL

  • Fournir des éléments de comportement de base de données imbriqués dans une connexion de base de données partagée, exécuter toutes les instructions sous forme de transaction unique

  • Fonctions JSTL

Installation de la bibliothèque JSTL

Étapes d'installation de la bibliothèque JSTL pour Apache Tomcat :

Téléchargez le paquet binaire de la bibliothèque de balises standard d'Apache (jakarta-taglibs-standard-current.zip).

téléchargez jakarta-taglibs-standard-1.1.2.zip démontez le paquet jakarta-taglibs-standard-1.1.2/lib/ sous les deux fichiers jar :standard.jar et jstl.jar et copiez le fichier /WEB-INF/lib/ sous.

Copiez le fichier tld que vous souhaitez inclure dans WEB-dans le répertoire INF.

Voici les configurations à ajouter dans le fichier web.xml :

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" 
    xmlns="http://java.sun.com/xml/ns/j2ee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
        http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <jsp-config>
    <taglib>
    <taglib-uri>http://java.sun.com/jsp/jstl/fmt</taglib-uri>
    <taglib-location>/WEB-INF/fmt.tld</taglib-location>
    </taglib>
    <taglib>
    <taglib-uri>http://java.sun.com/jsp/jstl/fmt-rt</taglib-uri>
    <taglib-location>/WEB-INF/fmt-rt.tld</taglib-location>
    </taglib>
    <taglib>
    <taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri>
    <taglib-location>/WEB-INF/c.tld</taglib-location>
    </taglib>
    <taglib>
    <taglib-uri>http://java.sun.com/jsp/jstl/core-rt</taglib-uri>
    <taglib-location>/WEB-INF/c-rt.tld</taglib-location>
    </taglib>
    <taglib>
    <taglib-uri>http://java.sun.com/jsp/jstl/sql</taglib-uri>
    <taglib-location>/WEB-INF/sql.tld</taglib-location>
    </taglib>
    <taglib>
    <taglib-uri>http://java.sun.com/jsp/jstl/sql-rt</taglib-uri>
    <taglib-location>/WEB-INF/sql-rt.tld</taglib-location>
    </taglib>
    <taglib>
    <taglib-uri>http://java.sun.com/jsp/jstl/x</taglib-uri>
    <taglib-location>/WEB-INF/x.tld</taglib-location>
    </taglib>
    <taglib>
    <taglib-uri>http://java.sun.com/jsp/jstl/x-rt</taglib-uri>
    <taglib-location>/WEB-INF/x-rt.tld</taglib-location>
    </taglib>
    </jsp-config>
</web-app>

Pour utiliser n'importe quelle bibliothèque, vous devez inclure le tag <taglib> dans l'en-tête de chaque fichier JSP.

Balises centrales

Les balises centrales sont les balises JSTL les plus couramment utilisées. La syntaxe pour référencer la bibliothèque de balises centrales est la suivante :

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
Balise Description
<c:out> Utilisé pour afficher des données dans JSP, comme <%= ... >
<c:set> Utilisé pour sauvegarder des données
<c:remove> Utilisé pour supprimer des données
<c:catch> Utilisé pour gérer les exceptions qui génèrent des erreurs et stocker les informations d'erreur
<c:if> Comme nous l'utilisons l'if dans un programme général
<c:choose> Ne sert qu'à être le parent de <c:when> et <c:otherwise>
<c:when> Balise de sous-étiquette de <c:choose>, utilisée pour juger de la validité d'une condition
<c:otherwise> Balise de sous-étiquette de <c:choose>, située après la balise <c:when>, et exécutée lorsque la balise <c:when> est jugée comme fausse
<c:import> Récupérer une URL absolue ou relative, puis exposer son contenu à la page
<c:forEach> Balise d'itération de base, acceptant plusieurs types de collections
<c:forTokens> Diviser le contenu en fonction d'un séparateur spécifié et itérer sur la sortie
<c:param> Transmettre des paramètres à une page incluse ou redirigée
<c:redirect> Rediriger vers une nouvelle URL.
<c:url> Créer une URL en utilisant des paramètres de requête optionnels

Balises de formatage

Les balises de formatage JSTL sont utilisées pour formater et afficher du texte, des dates, des heures et des nombres. La syntaxe d'utilisation de la bibliothèque de balises de formatage est la suivante :

<%@ taglib prefix="fmt" 
           uri="http://java.sun.com/jsp/jstl/fmt" %>
Balise Description
<fmt:formatNumber> Formater un nombre en utilisant un format ou une précision spécifiés
<fmt:parseNumber> Analyser une chaîne de caractères représentant un nombre, une monnaie ou un pourcentage
<fmt:formatDate> Formater une date et une heure en utilisant un style ou un modèle spécifié
<fmt:parseDate> Analyser une chaîne de caractères représentant une date ou une heure
<fmt:bundle> Lié aux ressources
<fmt:setLocale> Spécifier la région
<fmt:setBundle> Lié aux ressources
<fmt:timeZone> Spécifier le fuseau horaire
<fmt:setTimeZone> Spécifier le fuseau horaire
<fmt:message> Afficher les informations de configuration des ressources
<fmt:requestEncoding> Définir l'encodage des caractères de la requête

Balises SQL

La bibliothèque de balises SQL JSTL permet l'interaction avec les bases de données relationnelles (Oracle, MySQL, SQL Server, etc.). La syntaxe d'utilisation de la bibliothèque de balises SQL est la suivante :

<%@ taglib prefix="sql" 
           uri="http://java.sun.com/jsp/jstl/<%@ taglib prefix="sql"}}
Balise Description
sql" %> <sql:setDataSource>
Spécifier le point de données <sql:query>
Exécuter l'instruction de requête SQL <sql:update>
Exécuter l'instruction de mise à jour SQL <sql:param>
Définir le paramètre de l'instruction SQL en tant que valeur spécifiée <sql:dateParam>
Définir le paramètre de date de l'instruction SQL en tant que valeur de l'objet java.util.Date spécifié <sql:transaction>

Fournir des éléments de comportement de base de données imbriqués dans une connexion de base de données partagée, exécuter toutes les instructions sous forme de transaction unique

Balise XML

La bibliothèque de balises XML JSTL fournit des balises pour créer et manipuler des documents XML. La syntaxe d'appel à la bibliothèque de balises XML est la suivante : 
           uri="http://java.sun.com/jsp/jstl/<%@ taglib prefix="x"

Avant d'utiliser les balises xml, vous devez copier les packages XML et XPath dans le répertoire \lib de votre <Répertoire d'installation Tomcat> :

Balise Description
<x:out> Similaire à <%= ... >, mais utilisé uniquement pour les expressions XPath
<x:parse> Analyser les données XML
<x:set> Définir l'expression XPath
<x:if> Juger l'expression XPath, si elle est vraie, exécuter le contenu de la présente, sinon sauter le contenu de la présente
<x:forEach> Itérer sur les nœuds du document XML
<x:choose> Balise parent de <x:when> et <x:otherwise>
<x:when> Balise sous <x:choose>, utilisée pour des jugements conditionnels
<x:otherwise> Balise sous <x:choose>, exécutée lorsque <x:when> est faux
<x:transform> Appliquer la transformation XSL sur le document XML
<x:param> Utilisé conjointement avec <x:transform>, pour définir la feuille de style XSL

Fonctions JSTL

JSTL contient une série de fonctions standard, la plupart sont des fonctions de traitement de chaînes génériques. La syntaxe d'appel à la bibliothèque de fonctions JSTL est la suivante :

<%@ taglib prefix="fn" 
           uri="http://java.sun.com/jsp/jstl/functions" %>
Fonction Description
fn:contains() Tester si une chaîne d'entrée contient une sous-chaîne spécifiée
fn:containsIgnoreCase() Tester si une chaîne d'entrée contient une sous-chaîne spécifiée, insensible à la casse
fn:endsWith() Tester si une chaîne d'entrée se termine par un suffixe spécifié
fn:escapeXml() Ignorer les caractères qui peuvent être des balises XML
fn:indexOf() Retourner la position d'une chaîne spécifiée dans une chaîne d'entrée
fn:join() Combinaison des éléments d'un tableau en une chaîne et affichage
fn:length() Retourner la longueur d'une chaîne
fn:replace() Remplacer une position spécifiée dans une chaîne d'entrée par une chaîne spécifiée et retourner
fn:split() Diviser une chaîne en une sous-chaîne d'array avec un séparateur spécifié et la retourner
fn:startsWith() Tester si une chaîne d'entrée commence par un préfixe spécifié
fn:substring() Retourner une sous-chaîne
fn:substringAfter() Retourner la sous-chaîne après une sous-chaîne spécifiée
fn:substringBefore() Retourner la sous-chaîne avant une sous-chaîne spécifiée
fn:toLowerCase() Convertir les caractères d'une chaîne en minuscules
fn:toUpperCase() Convertir les caractères d'une chaîne en majuscules
fn:trim() Supprimer les espaces blancs en début et en fin