Обзор директив JSP

Страницы JSP содержат директивы, которые указывают контейнеру на обработку страницы, эти директивы связаны с скомпилированным сервлетом, который автоматически создается страницей JSP. В то время как директивы дают инструкции по обработке контейнеру, в котором работает компонент, директива не создает никакого вывода

  • Стандартный синтаксис для директивы следующий:

JSP содержит три директивы -

  • Директива страницы - для настройки параметров уровня страницы, пример - импорт - «java.util. *»
  • Директива включения - для включения файла, пример - file = ”Header.JSP”
  • Директива Taglib - Содержит настраиваемые действия, которые можно использовать на странице, пример -

<%@ taglib prefix="s" uri ="/ struts - tags " %>

Различные директивы JSP

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

1. Директива страницы

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

Директива страницы имеет следующий синтаксис -

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

а. Импорт - используется для объявления типов Java, которые будут использоваться на текущей странице. Например, если мы хотим использовать списки на странице JSP и перебирать их, то мы можем импортировать java.util.list, аналогичным образом можно импортировать другие распространенные пакеты, такие как IO, util и т. Д. Выполнены определенные неявные операции импорта, которые нам не нужно объявлять при работе со страницами и сервлетами JSP в директивах JSP:

  • языки
  • сервлет
  • servlet.http
  • servlet.jsp

б. Сеанс. Если установлено значение true, это означает, что страница будет участвовать в управлении сеансом. Значение по умолчанию также равно true, т. Е. При вызове страницы JSP будет создан экземпляр javax.servlet.http.HttpSession.

с. Буфер - сообщает размер буфера неявного объекта в килобайтах, необходимо упомянуть килобайт в конце упомянутого размера буфера, значение по умолчанию составляет 8 килобайт или более, в зависимости от контейнера JSP, если это значение не установлено, то это приведет к вывод записывается непосредственно в соответствующий PrintWriter.

д. AutoFlush - значение по умолчанию true, это означает, что значение буфера должно автоматически сбрасываться при заполнении буфера. Значение false указывает, что буфер очищается, только если вызывается метод сброса неявного объекта ответа.

е. IsThreadSafe - Это устаревшая практика, обычно не используемая, указывает на безопасность потока, реализованную на странице.

е. Информация - здесь указывается возвращаемое значение метода GetServletInfo.

грамм. Errorpage - Включено для обработки ошибок страницы.

час IsErrorPage - сообщает, может ли страница обработать ошибку или нет.

я. ContentType - всякий раз, когда вы отправляете данные контроллеру на серверной стороне, тело имеет связанный тип контента, например, если вы отправляете JSON, XML, простой текст, тогда контейнер узнает о типе контента, на который он должен ответить. Объект ответа будет создан аналогичным образом.

к. Кодировка страницы - по умолчанию, значение ISO-8859-1, указывает кодировку символов.

к. Язык - используется для указания языка сценариев, используемых на странице, значением по умолчанию будет только Java.

л. Расширяется - Используется для наследования суперкласса, так как базовый макет может наследоваться на всех страницах.

м. Trim Directive Whitespaces - Независимо от того, имеет ли текст шаблона пробелы или нет, по умолчанию используется значение false.

2. Включить директиву

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

Пример: Вы можете импортировать заголовки .jsp, footer.jsp, baseBodyLayout.jsp на все остальные страницы, и вам просто нужно предоставить контент, который будет отображаться на текущей странице, с конкретными сведениями, привязанными только к текущей странице.

Синтаксис для такого включения -

Обратите внимание, что объединение включенных файлов происходит только во время перевода, а не во время запроса, т.е.

  1. Ни один из включенного кода JSP не выполняется; он даже еще не скомпилирован.
  2. Файлы сначала объединяются, а затем весь объединенный вывод переводится как единое целое.
  3. Если включенные файлы когда-либо изменяются, у контейнера нет общего способа узнать и перекомпилировать весь модуль перевода.

3. Директива Taglib

Он используется для указания контейнеру, какая библиотека тегов требуется для конкретной JSP. Он также используется для назначения префикса, который используется на странице JSP для идентификации тегов из определенной библиотеки тегов. Контейнер, когда получает эти теги, находит код для этих тегов и готовит их к использованию JSP.

Синтаксис использования taglib следующий:

Таким образом, это указывает контейнеру, что все эти теги используются из этой библиотеки тегов и будут иметь префикс с пространством имен c: в этих директивах JSP. Этот URI может быть связан с библиотекой тегов через файл TLD. TLD может быть сопоставлен с использованием карты taglib в файле web.xml или путем специального размещения в каталоге META-INF в архиве JAR.

Каталог тегов также может быть указан как -

Таким образом, вы можете разместить теги в WEB-INF / tags, и контейнер получит их оттуда.

Вывод

Следовательно, мы увидели директивы JSP и то, что индикаторы на самом деле дают вышеупомянутым директивам контейнеру, и как контейнер сохраняет вещи, решаемые во время использования, эти директивы используются для добавления динамического поведения, и всякий раз, когда разрабатываются динамические веб-проекты, эти подходы приходят достойный. Аналогично, этот подход использовался в других синонимичных средах, таких как Struts, и многие URL-адреса доступны для такого использования.

Рекомендуемые статьи

Это было руководство к Директивам JSP. Здесь мы обсуждаем концепцию, различные директивы и их объяснение на примерах. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -

  1. JSP Интервью Вопросы
  2. Разница между JSP и ASP
  3. Учебники по архитектуре JSP
  4. J2EE Интервью Вопросы, которые вы должны знать