jsp
TRANSCRIPT
Java Server Pages
JSP
JSP (JavaServer Pages) — технология, позволяющая веб-
разработчикам создавать содержимое, которое имеет как
статические, так и динамические компоненты.
JSP
JSP позволяет отделить динамическую часть страниц от
статического HTML.
JSP
Страница JSP содержит текст двух типов: статические исходные данные, которые могут быть оформлены в одном из текстовых форматов HTML, SVG, WML, или XML, и JSP- элементы, которые конструируют динамическое содержимое.
JSP
Кроме этого могут использоваться библиотеки JSP-тегов, а также EL (Expression Language), для внедрения Java-кода в статичное содержимое JSP-страниц.
JSP
Код JSP-страницы транслируется в Java-код
сервлета с помощью компилятора JSP-страниц
Jasper, и затем компилируется в байт-код виртуальной машины
java (JVM).
JSP жизненный цикл
JSP
Контейнер сервлетов, выполняет JSP-страницу как
сервлет.
JSP
Динамическая часть кода заключается в специальные таги, большинство которых
начинаются с "<%" и завершаются "%>".
JSP
JSP страницы имеют расширение .jsp и размещаются
там же, где и обычные Web-страницы.
Скриптовые элементы
Спецификация JSP различает три типа скриптовых элементов:
Объявления Выражения Скриплеты
Объявления JSP
<%! private int accessCount = 0; %>
Объявления JSP позволят вам задавать переменные, методы, внутренние классы и так далее.
Выражения JSP
Текущее время: <%= new java.util.Date() %>Хост: <%= request.getRemoteHost() %>
Выражения JSP применяются для того, чтобы вставить значения Java непосредственно в вывод.
Выражения JSP
Необходимо обратить внимание на три правила:
JSP выражения должны в себе содержать выражения Java;
каждое JSP выражение должно содержать только одно выражение Java;
выражения JSP не должны заканчиваться точкой с запятой (;), в отличие от Java объявлений.
Скриплеты JSP
Скриплеты JSP дают возможность вставить любой
код в метод сервлета, который будет создан при обработке
страницы, позволяя использовать большинство
конструкций Java.
Директивы JSP
<%@ page import=”java.util.*, ua.step.*” buffer=”15kb” %>
JSP страница может послать сообщение соответствующему контейнеру с указаниями действий, которые необходимо провести.
Директивы JSP
Import = "пакет.class1, пакет.class2, ..., пакет.classN".
Позволяет вам задать пакеты или классы, которые должны быть импортированы.
Директивы JSP
language="java". Данный атрибут предназначен для задания используемого языка программирования. По умолчанию принимается значение "java"
Директивы JSP
extends="пакет.class"
Задаёт суперкласс (родительский класс) для генерируемого сервлета.
Директивы JSP
session="true"
Данный атрибут может принимать значение true или false, которые определяют принимает ли участие JSP страница в трансляции HTTP.
Директивы JSP
buffer="размерkb|none"Данный атрибут задаёт объём буферной памяти, необходимой для объекта JspWriter, на который ссылается заранее определённая переменная out
Директивы JSP
autoflush="true|false"Значение true («истина»,
принимаемое по умолчанию) устанавливает, что при
переполнении буферной памяти он автоматически очистится.
Директивы JSP
isThreadSafe="true|false" Задаёт нормальный режим
выполнения сервлета, когда множественные запросы
обрабатываются одновременно с использованием одного экземпляра
сервлета.
Директивы JSP
info="информация"Задаёт строку, которая может быть получена при использовании метода Servlet.getServletInfo(). Обычно этот метод возвращает информацию о сервлете (например, авторе, версии и авторских правах).
Директивы JSP
errorPage="url"Задаёт JSP страницу, которая вызывается в случае возникновения каких-либо исключительных ситуаций.
Директивы JSP
isErrorPage="true|false"Данный атрибут может принимать значения true или false. Сигнализирует о том, может ли эта страница использоваться для обработки ошибок для других JSP страниц или нет.
Директивы JSP
contentType="MIME-Тип"Данный атрибут задаёт тип MIME для вывода и по желанию можно задать кодировку знаков в ответе (HTML ответе). По умолчанию в качестве значения MIME используется text/html.
Директивы JSP
<%@ include file="url" %>Эта директива позволяет Вам включать файлы в сервлет в процессе трансляции JSP страницы.
Директива JSP taglib
<%@ taglib uri=”URI к библиотеке знаков” prefix=“префикс знака“ %>Расширяет библиотеку знаков которые может транслировать JSP контейнер.
Действия JSP
Действия JSP используют конструкции с синтаксисом XML для управления работой движка сервлета. Вы можете динамически подключать файл, многократно использовать компоненты JavaBeans, направить пользователя на другую страницу или сгенерировать HTML для Java plugin.
Действия JSP
jsp:declaration — Объявление, аналогичен тегу <%! … %>;jsp:scriptlet — Скриптлет, аналогичен тегу <% … %>;jsp:expression — Выражение, аналогичен тегу <%= … %>;sp:text — Вывод текста;jsp:useBean — Поиск или создание нового экземпляра JavaBean;
Действия JSP
jsp:setProperty — Установка свойств JavaBean;jsp:getProperty — Вставить свойство JavaBean в поток вывода;jsp:include — Подключает файл в момент запроса страницы;jsp:forward — Перенаправляет запрос на другую страницу;
Действия JSP
jsp:param — Добавляет параметры в объект запроса, например в элементах forward, include, plugin.;jsp:plugin — Генерирует код (в зависимости от типа используемого браузера), который создаёт тег OBJECT или EMBED для Java plugin;jsp:params — Группирует параметры внутри тега jsp:plugin;j
Действия JSP
jsp:fallback — Указывает содержимое, которое будет использоваться браузером клиента, если подключаемый модуль не сможет запуститься. Используется внутри элемента plugin.
Действие jsp:useBean
<jsp:useBean id="имя бина" class=«полное имя класса" />
JSP
JavaBean
JavaBeans — классы в языке Java, написанные по определённым правилам. Используются для объединения нескольких объектов в один для удобной передачи данных.
JavaBean
Спецификация Sun Microsystems определяет JavaBeans как
повторно используемые программные компоненты,
которыми можно управлять, используя графические
конструкторы и средства IDE.
JavaBean
Одна из целей создания JavaBeans — взаимодействие с
похожими компонентными структурами.
JavaBean
Одна из целей создания JavaBeans — взаимодействие с
похожими компонентными структурами.
Правила описания JavaBean
1. Класс должен иметь конструктор без параметров, с модификатором доступа public. Такой конструктор позволяет инструментам создать объект без дополнительных сложностей с параметрами.
Правила описания JavaBean
2.Свойства класса должны быть доступны через get, set и другие методы, которые должны подчиняться стандартному соглашению об именах. Это легко позволяет инструментам автоматически определять и обновлять содержание bean’ов.
Правила описания JavaBean
3.Класс должен быть сериализуем. Это даёт возможность надёжно сохранять, хранить и восстанавливать состояние bean независимым от платформы и виртуальной машины способом.
Правила описания JavaBean
4.Класс должен иметь переопределенные методы equals(), hashCode() и toString().
Expression Language
Expression Language (EL) — скриптовый язык выражений, который позволяет получить доступ к Java компонентам (JavaBeans) из JSP. Начиная с JSP 2.0 используется внутри JSP тегов для отделения Java кода от JSP для обеспечения лёгкого доступа к Java компонентам.