Содержание
- 2. JSTL Назначение JSTL – упростить разработку (и вид) JSP исходя из того, что не все разработчики
- 3. Поддержка Expression Language. Позволяет разработчику писать простые выражения внутри атрибутов тега и предоставляет “прозрачный” доступ к
- 4. Expression language JSTL вводит понятие Expression Language (EL) в JSP. EL используется для упрощения доступа к
- 5. Операторы Операторы, в EL поддерживают наиболее часто используемые манипулирования данными. Типы операторов: Стандартные операторы отношения: ==
- 6. Пример: ‘guest’}> User is guest. Автоматическое приведение типов EL использует набор правил для автоматического приведения типов.
- 7. Тэги JSTL Библиотека тэгов JSTL состоит из четырёх групп тэгов: основные тэги - core, тэги форматирования
- 8. Тэги общего назначения - вычисляет и выводит значение выражения. Пример: You have items. По умолчанию, конвертирует
- 9. Пример: default="unknown"/> Синтаксис: Без тела: [default=”defaultValue”] /> С телом: default value
- 10. - устанавливает переменную в указанную область видимости. Пример: может также быть использован для изменений свойств объектов
- 11. Синтаксис 2: Установка переменной в указанную область видимости, используя тело тега: [scope=”{page|request|session|application}”]> body content Пример: value="${param.name}"/>
- 12. Синтаксис 3: Установка свойства объекта, используя значение атрибута target=”target” property=”propertyName”/> Здесь target – имя переменной, чье
- 13. - удаляет переменную из указанной области видимости. Пример: scope="application"/> Синтаксис:
- 14. - перехватывает обработку исключения. Пример: ... Error Синтаксис: ………………………………….
- 15. Пример: prefix="c" %> Catching the Exception I can catch the exception: The exception will be thrown
- 16. The exception is : ${catchException} There is an exception: ${catchException.message} В браузере получим: I can catch
- 17. Тэги условного перехода - тело тэга вычисляется только в том случае если значение выражения true. Пример:
- 18. Синтаксис: Без тела: С телом: body content
- 19. Рассмотрим пример. Tag Example 2000}" var="varName"> My salary is: В браузере получим My salary is: 4000
- 20. ( , ) – то же что и с поддержкой нескольких условий, и действия, производимого по
- 21. Выражение if/then/else может быть легко записано как: No records matched your selection. records matched your selection.
- 22. Синтаксис: body content ( and subtags) body content conditional block
- 23. Итераторы - выполняет тело тега для каждого элемента коллекции. Пример:
- 24. Пример:
- 25. Класс BookList имеет вид: package aaa; import java.util.*; public class BookList extends AbstractCollection { public List
- 26. Класс Book имеет вид: package aaa; public class Book { public String title; public String url;
- 27. - выполняет тело тега для каждого токена в строке. Синтаксис: delims="delimiters" [var="varName"] [varStatus="varStatusName"] [begin="begin"] [end="end"] [step="step"]>
- 28. Пример: forTokens action Family member # is
- 29. Тэги обработки URL - перенаправляет запрос на указанный URL. Пример: - добавляет на JSP содержимое указанного
- 30. - формирует адрес с учётом контекста приложения (request.getContextPath()). - добавляет параметр к запросу, сформированному при помощи
- 31. JSTL fmt Содержит тэги форматирования и интернационализации. prefix=”fmt” %> - для обычной JSP. xmlns:c=”http://java.sun.com/jstl/fmt”> ... -
- 32. Тэги интернационализации - устанавливает объект Locale, используемый на странице. Пример: , - устанавливают объект ResourceBundle, используемый
- 33. Пример: Файл resource_bundle.properties имеет вид: title=My Company welcome=Welcome! Файл resource_bundle_ru.properties имеет вид: title=Моя компания welcome=Привет! В
- 34. - выводил локализованное сообщение. - используется для задания параметра в теге Синтаксис: Значение параметра задано в
- 35. Тэги форматирования , - форматирует числа / даты с учётом установленной локали (либо указанного шаблона). Пример:
- 36. Атрибут pattern задает шаблон для вывода. С его помощью можно указывать количество разрядов после запятой. Например,
- 37. , - устанавливает временную зону используемую для форматирования. Синтаксис: body content [var=”varName”] [scope=”{page|request|session|application}”]/> атрибут value, может
- 38. JSTL fmt:setTimeZone Tag " /> Date in Current Zone: dateStyle="long" /> Change Time Zone to GMT-8
- 39. - переводит строковое представление числа в объект подклассов Number. Синтаксис: [type=”{number|currency|percent}”] [pattern=”customPattern”] [parseLocale=”parseLocale”] [integerOnly=”{true|false}”] [var=”varName”] [scope=”{page|request|session|application}”]/>
- 40. JSTL fmt:parseNumber Tag Number Parsing: value="${balance}" /> Parsed Number (1) : type="number" value="${balance}" /> Parsed Number
- 41. JSTL sql Используется для выполнения запросов SQL и обработки результатов запроса на JSP. prefix=”sql” %> для
- 42. Доступ к физическим источникам данных предоставляется через объект javax.sql.DataSource. Пример: SELECT * FROM customers WHERE country
- 43. вносит изменения в базу данных. Для поддержания целостности базы данных несколько операций могут быть объединены в
- 44. JSTL xml Используется для обработки данных XML на JSP. prefix=”x” %> - для обычной JSP. xmlns:c=”http://java.sun.com/jstl/xml”>
- 45. Теги JSTL для работы с XML базируются на XPath. Теги и позволяют трансформировать XML документы в
- 46. Рассмотрим пример. Пропарсим xml файл Mahendra Singh Sofware developer 25 Anismita Singh Sofware developer 23
- 47. Ravi Kant Sr. Sofware developer 27 Suman Sr. Graphics Designer 25
- 48. Jsp страница будет иметь вид Example of x:parse tag Given Xml Document Some operations on this
- 49. Expression Result $doc//*
- 50. $doc/org/* $doc/org/company/*
- 51. $doc/org/company/emp $doc/org/company[last()]
- 52. Рассмотрим подробнее . Данный тег имеет следующий вид Таким образом для разбора xml файла используются XPath
- 53. Рассмотрим некоторые XPath выражения Есть два типа маршрутов местоположения: относительный и абсолютный. Относительный маршрут местоположения -
- 54. Абсолютный маршрут местоположения состоит из /, за которым, возможно, следует относительный маршрут местоположения, здесь / ссылается
- 55. @ используется для ссылки на атрибуты. Например, маршрут местоположения @currency идентифицирует атрибут currency. list/item[@private] идентифицирует элементы
- 56. // используется для ссылки на все дочерние элементы узла контекста. Например, //item ссылается на все элементы
- 57. XPath также допускает математические выражения и имеет библиотеку функций. Таким образом в браузере получим следующее:
- 59. JSTL functions Теги из этой библиотеки выполняют роль, подобную смыслу библиотеки fmt, только не для чисел
- 61. Скачать презентацию