Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
201
Добавлен:
17.04.2018
Размер:
684.54 Кб
Скачать

ИП. Сервлеты и JSP. Cинтаксис JSP

МИЭТ, 2017

Комментарии

Комментарии заключаются в теги <%-- Текст комментария --%> и являются многострочными.

Пример:

<%--

Document : response

Created on : 05.05.2017, 15:19:39 Author : Андрей

--%>

ИП. Сервлеты и JSP. Cинтаксис JSP

МИЭТ, 2017

Директивы

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

Синтаксис директивы:

<%@ Тип_директивы Имя_Атрибута="значение" %>

Существует альтернативная запись директив в xml-стиле, предназначенная для подключения в jsp страницу расширений

<jsp:directive.Тип_директивы Имя_Атрибута="Значение" />

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

Существует три типа директив:

page (страница)

include (включить)

taglib (библиотека тегов)

ИП. Сервлеты и JSP. Cинтаксис JSP. Атрибуты директив

МИЭТ, 2017

Имя атрибута

Значение

Описание

 

language

Строка

Определяет язык, используемый в скриптлетах файла JSP.

 

 

По умолчанию - "java"

 

extends

Строка

Задает суперкласс для сервлета.

 

import

Строка

Определение импортируемых пакетов., например:

 

 

<%@ page import="java.util.* %>

 

Session

true / false Включение / выключение сесии

 

Buffer

none / кБ.

Задает размер буфера для JspWriter out. Значение принимаемое по

 

 

умолчанию зависит от настроек сервера, и не должно быть > 8 кБ.

autoFlush

true / false

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

 

 

он переполнен или произошла ошибка

 

isThreadSafe

true / false Многопоточное (true-один экземпляр сервлета на все

 

 

запросы) или однопоточное (false — на каждый запрос свой

 

 

экземпляр)

 

info

Строка

Определяет строку информации о странице JSP, которая будет

 

 

доступна с помощью метода Servlet.getServletInfo ()

errorPage

Строка

URL страницы, которая должна выводиться в случае возможных

 

 

ошибок, вызывающих исключения

 

isErrorPage

true / false

Сигнализирует о том, может ли эта страница использоваться для

 

 

обработки ошибок для других JSP страниц.

 

contentType

Строка

Определяет кодировку для страницы JSP и ответа, а также MIME-тип

 

 

ответа

 

pageEncoding

Строка

Определяет кодировку символов страницы JSP. По умолчанию

ИП. Сервлеты и JSP. Cинтаксис JSP

МИЭТ, 2017

Директива include

Директива include позволяет вставлять текстовый файл (например, html) или java-код в процессе трансляции страницы JSP в сервлет.

Вставляемый текст интерпретируется как есть на том месте, где он расположен. Директива include имеет один атрибут — file, который содержит относительный путь к включаемому файлу.

Синтаксис директивы include:

<%@ include file="Относительный URI страницы" %>

Пример использования директивы JSP для подключения файла с текстом копирайтов:

<%@ include file="copyright.html" %>

ИП. Сервлеты и JSP. Cинтаксис JSP

МИЭТ, 2017

Директива taglib

Директива taglib объявляет, что данная страница JSP использует библиотеку тегов, уникальным образом идентифицируя ее с помощью URI, и ставит в соответствие префикс тега, с помощью которого возможны действия в библиотеке. Если контейнер не может найти библиотеку тегов, возникает фатальная ошибка трансляции

.

Директива taglib имеет следующий синтаксис:

<%@ taglib uri="URI библиотеки тегов" prefix="Имя_Префикса" %>

Префикс "Имя_Префикса" используется при обращении к библиотеке. Пример использования библиотеки тегов newtags:

<%@ taglib uri="http://www.miet.ru/newtags.tgl" prefix="miet" %>

. . .

<miet:myTag>

В данном примере библиотека тегов имеет URI-адрес "http://www.miet.ru/newtags.tgl", в качестве префикса назначена строка miet, которая используется в странице JSP при обращении к элементам библиотеки тегов.

ИП. Сервлеты и JSP. Cинтаксис JSP

МИЭТ, 2017

Объявления

Объявления (Declarations) предназначены для определения переменных и методов на языке скриптов, которые в дальнейшем используются на странице JSP. Синтаксис declarations имеет следующий вид :

<%! код Java %>

Обычно объявления группируются вверху страницы JSP и содержат объявления всех переменных и методов используемых на странице.

Пример блока объявлений:

<%!

int n = 100; String temp;

String m = "MIET"; %>

ИП. Сервлеты и JSP. Cинтаксис JSP

МИЭТ, 2017

Выражения

Выражения JSP применяются для вывода данных в тело страницы. Все выражения, вне зависимости от сложности их содержимого, вычисляются в один результат или число. Выражения не должны заканчиваться «;». Фактически результат выражения вставляется как аргумент в response.println.

Примеры выражений:

Текущее время: <%= new java.util.Date() %> Наш ВУЗ: <%= 'МИЭТ' %>

ИП. Сервлеты и JSP. Cинтаксис JSP

МИЭТ, 2017

Скриплеты

Скриплеты JSP применяются для вставки исполняемого кода на Java. Скриплеты могут производить вычисления и осуществлять вывод

Пример скриплета, выводящего все поля и их значения переданные из формы в страницу JSP

<%@ page import="java.util.*" %>

<h1>Получены данные</h1> <%

for (Enumeration<String> e = request.getParameterNames(); e.hasMoreElements();) {

String name = e.nextElement(); out.println(name+"="+request.getParameter(name)

+"<br>");

}

%>

ИП. Сервлеты и JSP. Компоненты JSP

МИЭТ, 2017

JavaBeans

Технология JavaBeans реализует сборку приложений из компонентов, при котором разработчик должен знать только сервисы компонентов; детали реализации компонентов при этом сокрыты (инкапсулированы).

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

С точки зрения реализации JavaBean это классы Java написанные с собюдением специальных правил и специальным образом подключаемые на странице

ИП. Сервлеты и JSP. Компоненты JSP

МИЭТ, 2017

Правила описания класса JavaBeans

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

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

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

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

Соседние файлы в папке Интернет технологии