пятница, 10 июня 2011 г.

Директива <%@ page...%>

Предназначена для того, чтобы применить определенные настройки для поточной страницы. Также эти настройки применяются ко всем статически файлам, которые подключаются к данной странице (это потому что эти файлы становятся частью этой страницы).
Ктати поточная  jsp + подключенные к ней статические файлы называются транслейшин юнит.



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


  • language="java" Скриптовый язык, который применяется в скриплетах, декларациях и выражениях этой страницы и статических заинклюденных файлов. Пока можно талько java.
  • extends="package.class" Имя суперкласса, этот супер класс будет расширять скомпилированный из этой страницы явакласс. Я так понимаю он должен реализовать интерфейс как минимум сервлета, а вообще и наверно какой-то интерфейс для джееспе-страниц, которые становятся сервлетами.
  • import="{package.class | package.* }, ..." Разделенный запятыми список пакетов и классов, которые нужно подгрузить на эту страницу. Они могут использоваться сриптлетами, выражениями и декларациями поточной страницы. Следующие пакеты подгружаются неявно, так что можно их явно не подлючать:
    java.lang.*
    javax.servlet.*
    javax.servlet.jsp.*
    javax.servlet.http.*
    Понятное дело что импорт должен располагаться выше места использования из него классов.
  • session="true | false" Флаг определяет нужна ли сессия для доступа на эту страницу. Если тру, то при обращении к этой странице будет придоставляться либо уже существующий обьект поточной сессии, либо, если обьекта нет, будет создана новая сессия.
    В случае фолс, оборащение к сессии или использование с scope=session будет происходить ошибка translation-time error.
    По-умолчанию true.
  • buffer="none | 8kb | sizekb" Размер буфера в килобайтах, он используется обьектом out, который обрабатывает исходящие из скомпилированной страницы байты для браузера(клиента).
  • autoFlush="true | false" Сбрасывать ли из буфера клиенту накопившиеся байты, размер которых достиг лимита буфера. Если будет фолс и руками вовремя буфер не сбросить, будет ошибка переполнения буфера. Если атрибут буффер="нон", то этому нельзя поставить фолс.
  • isThreadSafe="true | false" Если тру, то контейнер отправляет множество конкурирующих запросов странице одновременно(если конечно кто-то одновременно обратился к странице в данный момент), наш же код в ней, должен уметь работать паралельно с многими запросами. Если фолс, то запросы отправляются последовательно.
  • info="text" Текст который попадает в скомпилированный из страницы класс, его потому можно получитьт методом Servlet.getServletInfo().
  • errorPage="relativeURL" Путь к странице, которай данная страница отправляет исключения, произошедшие в ней. Путь либо абсолютный, либо относительный к данной странице.
  • isErrorPage="true | false" Является ли данная страница обоработчиком исключений. Если три, то можно использовать в этой странице обьект exception.
  • contentType="mimeType [ ;charset=characterSet ]" | "text/html;charset=ISO-8859-1" Ну это понятно, что за параметр.

Комментариев нет:

Отправить комментарий