jstl
TRANSCRIPT
![Page 1: JSTL](https://reader036.vdocuments.site/reader036/viewer/2022081909/58e49d371a28abf5428b56a1/html5/thumbnails/1.jpg)
Tags в JSP
![Page 2: JSTL](https://reader036.vdocuments.site/reader036/viewer/2022081909/58e49d371a28abf5428b56a1/html5/thumbnails/2.jpg)
JSTL
Стандартная библиотека тегов JSP (англ. JavaServer Pages
Standard Tag Library, JSTL) — расширение спецификации JSP, добавляющее библиотеку JSP
тегов для общих нужд.
![Page 3: JSTL](https://reader036.vdocuments.site/reader036/viewer/2022081909/58e49d371a28abf5428b56a1/html5/thumbnails/3.jpg)
JSTL
Например JSTL добавляет: условную обработку, создание циклов разбор XML данных,Поддержку интернационализации.
![Page 4: JSTL](https://reader036.vdocuments.site/reader036/viewer/2022081909/58e49d371a28abf5428b56a1/html5/thumbnails/4.jpg)
JSTL
В начало JSP страницы вы должны подключить JSTL core:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
![Page 5: JSTL](https://reader036.vdocuments.site/reader036/viewer/2022081909/58e49d371a28abf5428b56a1/html5/thumbnails/5.jpg)
Переменные JSTL
<c:set var="animal" value="Cat"/>
Создает переменную которая будет иметь
значение «Cat»
![Page 6: JSTL](https://reader036.vdocuments.site/reader036/viewer/2022081909/58e49d371a28abf5428b56a1/html5/thumbnails/6.jpg)
Операторы условий JSTL
<c:if test="${10 > 9}"> <p>True<p></c:if><c:if test="${10 < 9}"> <p>False<p></c:if>
![Page 7: JSTL](https://reader036.vdocuments.site/reader036/viewer/2022081909/58e49d371a28abf5428b56a1/html5/thumbnails/7.jpg)
Операторы условий JSTL
eq – проверка на равенствоne – проверка на неравенствоlt – строго менее чемgt – строго более чемle – меньше либо равно чему-тоge – больше или равно чему-то
![Page 8: JSTL](https://reader036.vdocuments.site/reader036/viewer/2022081909/58e49d371a28abf5428b56a1/html5/thumbnails/8.jpg)
Операторы условий JSTL
Тэг choose дает возможность выбора, аналог switch в java.choose имеет вложенный тег when который отвечает за определенное действие при условии, что test будет истинно.
![Page 9: JSTL](https://reader036.vdocuments.site/reader036/viewer/2022081909/58e49d371a28abf5428b56a1/html5/thumbnails/9.jpg)
Операторы условий JSTL
<c:set var="num" scope="session" value="10"/><c:choose> <c:when test="${num <= 0}"> Если num <= 0 </c:when> <c:when test="${num > 1000}"> Если num > 1000 </c:when> <c:otherwise> Если не одно условие не есть верно. </c:otherwise></c:choose>
![Page 10: JSTL](https://reader036.vdocuments.site/reader036/viewer/2022081909/58e49d371a28abf5428b56a1/html5/thumbnails/10.jpg)
Циклы условий JSTL
<c:forEach var="num" items="${list}"> <p>${num}</p></c:forEach>${num} — в эту переменную присваиваются значения со списка list по очереди.${list} — список значений(объектов).
![Page 11: JSTL](https://reader036.vdocuments.site/reader036/viewer/2022081909/58e49d371a28abf5428b56a1/html5/thumbnails/11.jpg)
Пользовательский тег
Пользовательский тег представляет собой определенный пользователем элемент JSP-языка. Когда JSP-страница, содержащая пользовательский тег, транслируется в сервлет, тег преобразовывается в операции над объектом, называемым обработчиком тега.
![Page 12: JSTL](https://reader036.vdocuments.site/reader036/viewer/2022081909/58e49d371a28abf5428b56a1/html5/thumbnails/12.jpg)
Пользовательский тег
Пользовательские теги JSP пишутся с использованием синтаксиса XML. Они имеют начальный тег, конечный тег и, возможно, тело:<mt:tag> body</mt:tag>
![Page 13: JSTL](https://reader036.vdocuments.site/reader036/viewer/2022081909/58e49d371a28abf5428b56a1/html5/thumbnails/13.jpg)
Пользовательский тег
<%@ taglib uri="/WEB-INF/main-template.tld" prefix="mt" %>
![Page 14: JSTL](https://reader036.vdocuments.site/reader036/viewer/2022081909/58e49d371a28abf5428b56a1/html5/thumbnails/14.jpg)
Пользовательский тег
Дескриптор библиотеки тегов (TLD) представляет собой XML-документ, описывающий библиотеку тегов. TLD содержит общую информацию и информацию о каждом теге, содержащемся в библиотеке. TLD используется Web-контейнером для проверки тегов, а также средствами разработки JSP-страницы.
![Page 15: JSTL](https://reader036.vdocuments.site/reader036/viewer/2022081909/58e49d371a28abf5428b56a1/html5/thumbnails/15.jpg)
Пользовательский тег
Названия TLD-файлов должны иметь расширение .tld. TLD-файлы хранятся в каталоге WEB-INF файла WAR или подкаталогах каталога WEB-INF. TLD должен начинаться прологом XML-документа, указывающим версию XML и определение типа документа (DTD)