jsp

46
Java Server Pages

Upload: unguryan-vitaliy

Post on 05-Apr-2017

14 views

Category:

Education


0 download

TRANSCRIPT

Page 1: JSP

Java Server Pages

Page 2: JSP
Page 3: JSP

JSP

JSP (JavaServer Pages) — технология, позволяющая веб-

разработчикам создавать содержимое, которое имеет как

статические, так и динамические компоненты.

Page 4: JSP

JSP

JSP позволяет отделить динамическую часть страниц от

статического HTML.

Page 5: JSP

JSP

Страница JSP содержит текст двух типов: статические исходные данные, которые могут быть оформлены в одном из текстовых форматов HTML, SVG, WML, или XML, и JSP- элементы, которые конструируют динамическое содержимое.

Page 6: JSP

JSP

Кроме этого могут использоваться библиотеки JSP-тегов, а также EL (Expression Language), для внедрения Java-кода в статичное содержимое JSP-страниц.

Page 7: JSP

JSP

Код JSP-страницы транслируется в Java-код

сервлета с помощью компилятора JSP-страниц

Jasper, и затем компилируется в байт-код виртуальной машины

java (JVM).

Page 8: JSP

JSP жизненный цикл

Page 9: JSP

JSP

Контейнер сервлетов, выполняет JSP-страницу как

сервлет.

Page 10: JSP

JSP

Динамическая часть кода заключается в специальные таги, большинство которых

начинаются с "<%" и завершаются "%>".

Page 11: JSP

JSP

JSP страницы имеют расширение .jsp и размещаются

там же, где и обычные Web-страницы.

Page 12: JSP

Скриптовые элементы

Спецификация JSP различает три типа скриптовых элементов:

Объявления Выражения Скриплеты

Page 13: JSP

Объявления JSP

<%! private int accessCount = 0; %>

Объявления JSP позволят вам задавать переменные, методы, внутренние классы и так далее.

Page 14: JSP

Выражения JSP

Текущее время: <%= new java.util.Date() %>Хост: <%= request.getRemoteHost() %>

Выражения JSP применяются для того, чтобы вставить значения Java непосредственно в вывод.

Page 15: JSP

Выражения JSP

Необходимо обратить внимание на три правила:

JSP выражения должны в себе содержать выражения Java;

каждое JSP выражение должно содержать только одно выражение Java;

выражения JSP не должны заканчиваться точкой с запятой (;), в отличие от Java объявлений.

Page 16: JSP

Скриплеты JSP

Скриплеты JSP дают возможность вставить любой

код в метод сервлета, который будет создан при обработке

страницы, позволяя использовать большинство

конструкций Java.

Page 17: JSP

Директивы JSP

<%@ page import=”java.util.*, ua.step.*” buffer=”15kb” %>

JSP страница может послать сообщение соответствующему контейнеру с указаниями действий, которые необходимо провести.

Page 18: JSP

Директивы JSP

Import = "пакет.class1, пакет.class2, ..., пакет.classN".

Позволяет вам задать пакеты или классы, которые должны быть импортированы.

Page 19: JSP

Директивы JSP

language="java". Данный атрибут предназначен для задания используемого языка программирования. По умолчанию принимается значение "java"

Page 20: JSP

Директивы JSP

extends="пакет.class"

Задаёт суперкласс (родительский класс) для генерируемого сервлета.

Page 21: JSP

Директивы JSP

session="true"

Данный атрибут может принимать значение true или false, которые определяют принимает ли участие JSP страница в трансляции HTTP.

Page 22: JSP

Директивы JSP

buffer="размерkb|none"Данный атрибут задаёт объём буферной памяти, необходимой для объекта JspWriter, на который ссылается заранее определённая переменная out

Page 23: JSP

Директивы JSP

autoflush="true|false"Значение true («истина»,

принимаемое по умолчанию) устанавливает, что при

переполнении буферной памяти он автоматически очистится.

Page 24: JSP

Директивы JSP

isThreadSafe="true|false" Задаёт нормальный режим

выполнения сервлета, когда множественные запросы

обрабатываются одновременно с использованием одного экземпляра

сервлета.

Page 25: JSP

Директивы JSP

info="информация"Задаёт строку, которая может быть получена при использовании метода Servlet.getServletInfo(). Обычно этот метод возвращает информацию о сервлете (например, авторе, версии и авторских правах).

Page 26: JSP

Директивы JSP

errorPage="url"Задаёт JSP страницу, которая вызывается в случае возникновения каких-либо исключительных ситуаций.

Page 27: JSP

Директивы JSP

isErrorPage="true|false"Данный атрибут может принимать значения true или false. Сигнализирует о том, может ли эта страница использоваться для обработки ошибок для других JSP страниц или нет.

Page 28: JSP

Директивы JSP

contentType="MIME-Тип"Данный атрибут задаёт тип MIME для вывода и по желанию можно задать кодировку знаков в ответе (HTML ответе). По умолчанию в качестве значения MIME используется text/html.

Page 29: JSP

Директивы JSP

<%@ include file="url" %>Эта директива позволяет Вам включать файлы в сервлет в процессе трансляции JSP страницы.

Page 30: JSP

Директива JSP taglib

<%@ taglib uri=”URI к библиотеке знаков” prefix=“префикс знака“ %>Расширяет библиотеку знаков которые может транслировать JSP контейнер.

Page 31: JSP

Действия JSP

Действия JSP используют конструкции с синтаксисом XML для управления работой движка сервлета. Вы можете динамически подключать файл, многократно использовать компоненты JavaBeans, направить пользователя на другую страницу или сгенерировать HTML для Java plugin.

Page 32: JSP

Действия JSP

jsp:declaration — Объявление, аналогичен тегу <%! … %>;jsp:scriptlet — Скриптлет, аналогичен тегу <% … %>;jsp:expression — Выражение, аналогичен тегу <%= … %>;sp:text — Вывод текста;jsp:useBean — Поиск или создание нового экземпляра JavaBean;

Page 33: JSP

Действия JSP

jsp:setProperty — Установка свойств JavaBean;jsp:getProperty — Вставить свойство JavaBean в поток вывода;jsp:include — Подключает файл в момент запроса страницы;jsp:forward — Перенаправляет запрос на другую страницу;

Page 34: JSP

Действия JSP

jsp:param — Добавляет параметры в объект запроса, например в элементах forward, include, plugin.;jsp:plugin — Генерирует код (в зависимости от типа используемого браузера), который создаёт тег OBJECT или EMBED для Java plugin;jsp:params — Группирует параметры внутри тега jsp:plugin;j

Page 35: JSP

Действия JSP

jsp:fallback — Указывает содержимое, которое будет использоваться браузером клиента, если подключаемый модуль не сможет запуститься. Используется внутри элемента plugin.

Page 36: JSP

Действие jsp:useBean

<jsp:useBean id="имя бина" class=«полное имя класса" />

Page 37: JSP

JSP

Page 38: JSP

JavaBean

JavaBeans — классы в языке Java, написанные по определённым правилам. Используются для объединения нескольких объектов в один для удобной передачи данных.

Page 39: JSP

JavaBean

Спецификация Sun Microsystems определяет JavaBeans как

повторно используемые программные компоненты,

которыми можно управлять, используя графические

конструкторы и средства IDE.

Page 40: JSP

JavaBean

Одна из целей создания JavaBeans — взаимодействие с

похожими компонентными структурами.

Page 41: JSP

JavaBean

Одна из целей создания JavaBeans — взаимодействие с

похожими компонентными структурами.

Page 42: JSP

Правила описания JavaBean

1. Класс должен иметь конструктор без параметров, с модификатором доступа public. Такой конструктор позволяет инструментам создать объект без дополнительных сложностей с параметрами.

Page 43: JSP

Правила описания JavaBean

2.Свойства класса должны быть доступны через get, set и другие методы, которые должны подчиняться стандартному соглашению об именах. Это легко позволяет инструментам автоматически определять и обновлять содержание bean’ов.

Page 44: JSP

Правила описания JavaBean

3.Класс должен быть сериализуем. Это даёт возможность надёжно сохранять, хранить и восстанавливать состояние bean независимым от платформы и виртуальной машины способом.

Page 45: JSP

Правила описания JavaBean

4.Класс должен иметь переопределенные методы equals(), hashCode() и toString().

Page 46: JSP

Expression Language

Expression Language (EL) — скриптовый язык выражений, который позволяет получить доступ к Java компонентам (JavaBeans) из JSP. Начиная с JSP 2.0 используется внутри JSP тегов для отделения Java кода от JSP для обеспечения лёгкого доступа к Java компонентам.