Es ist praktisch, JSTL zu verwenden, wenn Sie Zeichnungen mit JSP schreiben, das eine lange Geschichte hat. JSTL ist eine Java Server Pages Standard-Tag-Bibliothek.
Wenn Sie "<% xxx%>" verwenden, können Sie das JSP-Format usw. nicht hierarchisch organisieren, sodass die Wartbarkeit schlecht ist. Teilen Sie bei komplexen JSPs die JSP-Datei und verwenden Sie das JSTL-Core-Tag, um das Verständnis von Verzweigung, LOOP usw. zu erleichtern.
EL-Ausdrücke werden mit den Tags $ {~} beschrieben.
Einfaches Berechnungsbeispiel: $ {100 + 200 * 30}
, $ {" 1 "äq" 1 "?" True ":" False "}
pageContext, request Beispiel: $ {user.userName}
, $ {count}
Sitzungsbeispiel: $ {sessionScope.user.userName}
Beispiel für den Anfangsparameter: $ {initParam [" param1 "]}
Cookie-Beispiel: $ {cookie [" param1 "]. Value}
Header-Beispiel: $ {header ['user-agent']}
Wie schreibe ich häufig verwendete Vergleiche?
1, gleich: $ {a eq b}
2, ungleich: $ {a ne b}
3、Not:${not a}
4、Empty:${empty a}
5、Not Empty:${not empty a}
6, größer als: $ {a gt b}
7, weniger als: $ {a lt b}
8 oder mehr: $ {a ge b}
9, unten: $ {a le b}
Wenn Sie in einen EL-Ausdruck schreiben, müssen Sie ihn festlegen.
String data = "Es ist ein Test.";
<%= data %> // OK
<c:out value=${data} /> //NG. Datenvariable ist Anfrage,Weil es nicht in pageContext etc. gesetzt ist.
String data = "Es ist ein Test.";
pageContext.setAttribute("data", data);
<%= data %> // OK
<c:out value=${data} /> // OK
Art | Erläuterung |
---|---|
core | forJede, if, Variablenreferenz/Grundlegende Tags wie Einstellungen |
fmt | Zahlen- und Datumsformate usw. |
xml | XML-Dokumentanalyse, XSL-Stylesheet |
functions | Allgemeine String-Funktionen (enthält usw.) |
sql | Funktionen, die SQL ausgeben und die Datenbank betreiben |
Häufig verwendet werden core, function, fmt.
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
Etikett | Erläuterung |
---|---|
c:set | Variablen setzen |
c:remove | Variable löschen |
c:out | Ausgabe |
c:if | if-Anweisung (einzelner bedingter Zweig) |
c:choose, c:when, c:otherwise | if-else,if-elseif-else-Anweisung (mehrere bedingte Verzweigungen) |
c:forEach | Schleife |
c:forTokens | Teilen Sie die Zeichenfolge mit einem Trennzeichen |
c:import | Datei importieren |
c:redirect | umleiten |
c:url | URL generieren |
c:catch | Ausnahmebehandlung |
c:param | Geben Sie die Parameter an |
<c:set var="score" value="80" />
<c:choose>
<c:when test=${score gt 90}>
<c:out value="sehr beeindruckend." />
</c:when>
<c:when test=${score gt 80}>
<c:out value="Es ist ausgezeichnet." />
</c:when>
<c:otherwise>
<c:out value="Bitte gib dein bestes." />
</c:otherwise>
</c:choose>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
Etikett | Erläuterung |
---|---|
fmt:formatNumber | Formatieren Sie numerische Daten |
fmt:formatDate | Datumsdaten formatieren |
fmt:parseNumber | Konvertieren Sie Zeichenfolgen in numerische Daten |
fmt:parseDate | Zeichenfolge in Datumsdaten konvertieren |
fmt:bundle, fmt:message | Nachricht für Ressource abrufen |
fmt:requestEncording> | Stellen Sie die Zeichenkodierung der Anforderung ein |
fmt:setLocale | Gebietsschema festlegen |
fmt:setTimeZone | Zeitzone einstellen |
fmt:timeZone | Zeitzone einstellen |
<fmt:formatDate value="${data.updateDate}" pattern="yyyy/MM/dd HH:mm"/>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
Etikett | Erläuterung |
---|---|
fn:contains() | Enthält es die angegebene Zeichenfolge? |
fn:containsIgnoreCase() | Enthält es die angegebene Zeichenfolge (ohne Berücksichtigung der Groß- und Kleinschreibung) |
fn:endsWith() | Ist die letzte Zeichenfolge eine angegebene Zeichenfolge? |
fn:escapeXml() | Flucht |
fn:indexOf() | Gibt den Index der angegebenen Zeichenfolge zurück. Wenn es nicht existiert-1 |
fn:trim() | Leerzeichen vor und nach der Schnur entfernen |
fn:startsWith() | Ist die ursprüngliche Zeichenfolge eine angegebene Zeichenfolge? |
fn:split() | Durch angegebene Zeichenfolge teilen |
fn:toLowerCase() | In Kleinbuchstaben konvertieren |
fn:toUpperCase() | In Großbuchstaben konvertieren |
fn:substring() | Extrahieren Sie die Zeichenfolge innerhalb des angegebenen Bereichs |
fn:substringAfter() | Nach der angegebenen Zeichenfolge extrahieren |
fn:substringBefore() | Vor der angegebenen Zeichenfolge extrahieren |
fn:length() | Gibt die Länge der Zeichenfolge zurück |
fn:replace() | Ersatz |
<c:set var="favs" value="Circer, lesen" />
<c:out value="${fn:contains(favs, 'lesen') ? 'lesenが大好きです。' : 'lesenに興味がありません。' }"></c:out>
sql
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>
Details: https://www.javatpoint.com/jstl-sql-tags
xml
<%@ taglib uri="http://java.sun.com/jsp/jstl/xml" prefix="x" %>
Details: https://www.javatpoint.com/jstl-xml-tags
das ist alles