Съдържание JSP потребителски тагове и библиотеки JSTL тагове Структурни Локализация XML Достъп до бази данни и SQL
3.
JSP потребителскитагове и библиотеки JSP Custom Tags and Tag Libraries
4.
Какво e потребителски таг ? Потребителските тагове ( custom tags) са компоненти за многократно използване Всеки разработчик може да ги създаде Могат да се изтеглят от Интернет ( http://www.jsptags.com ) Позволяват компонентно-ориентирана разработка в уеб приложенията Скриват сложността на визуализацията Разработчиците се съсредоточават върху същината на проекта
5.
Потребителски тагове Потребителскитетагове изглеждат като HTML тагове Дизайнери и разработчици са свикнали да работят с тях Имат поведение, дефинирано от програмиста Могат да приемат параметри Пример: <myTags:calendar date="17/12/2006" />
6.
Какво е библиотекас тагове? Библиотеките с тагове ( tag libraries) са съвкупности от тагове Имат име ( prefix) и URI идентификатор Състоят се от: Интерфейс ( TLD файлове) XML базирано описание на таговете Имплементация ( JAR файлове) Съвкупност от компилирани класове и ресурси
7.
Как да използвамебиблиотека с тагове? Включваме библиотеката с тагове към уеб приложението Слагаме необходимите TLD и JAR файлове в /WEB-INF и в /WEB-INF/lib Регистрираме библиотеката с тагове Използваме тагове от библиотеката чрез посочения при регистрацията префикс <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <c:out value="I am a custom tag" />
8.
JSTL (JavaServer PagesStandard Tag Library) Стандартната библиотека с тагове в JSP стандарта
9.
Какво е JSTL? JSTL е стандартна библиотека с тагове Част от JSP 2.0 стандарта JSTL имплементира често използвани в уеб приложенията функционалности JSTL Core – базови (основни) функции Работа с променливи, условия, цикли , I/O JSTL Format – ф орматиране и i18n Message bundles, числа, дати JSTL XML – работа с XML данни Парсване на XML , XSL трансформации JSTL SQL – Работа с бази от данни и SQL Изпълнение на SQL заявки
10.
Защо JSTL? ПозволяваJSP страниците да съдържат чист XML (JSPX страници) Избягваме употребата на JSP елементи за скриптиране Избягване на Java код в страниците Кодът става по-лесен за четене и поддръжка Спестяваме усилия Ползваме наготово най-често използваната функционалност
JSTL Core таговеВключване на JSTL Core библиотеката Работа с променливи : <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"> <%-- Save data in scoped variables --%> <c:set var="name1" value="value1" scope="page" /> <c:set var="name2" value="value2" scope="request" /> <c:set var="name3" value="value3" scope="session" /> <c:set var="name4" value="value4" scope="application" />
13.
Core тагове <c:out><c:remove> <c:catch> <c:out value='${pageScope.someBean}' /> <c:out value='${user.login}' /> <c:out value='${user.name}' /> <c:out value='${user.title}' escape Xml ='false' /> <c:remove var="name" scope="page" /> <c:catch var="myException"> Inside the catch… <% int x = 10/0; %> </c:catch>
14.
Core тагове Условни<c:if> <c:choose>, <c:when>, <c:otherwise> <c:if test='${param.p == "someValue"}'> The property p of param is equal to "someValue" </c:if> <c:choose> <c:when test='${param.p == "someValue"}'> Generate this if p equals someValue </c:when> <c:otherwise> Otherwise generate this template </c:otherwise> </c:choose>
JSTL XML таговеВключване на JSTL XML библиотеката Парсване на XML низ в променлива: Извеждане на стойност от XPath израз от XML документ от променливата catalog : <%@ taglib uri="http://java.sun.com/jstl/xml" prefix="x" %> <x:out select="$catalog/book/title"/> <x:parse var="catalog" xml="${catalogXml}" />